我有一个文件存储在我的 netbeans 项目中,路径如下:
ReportCSV/ReportDownload.csv
我的 struts 动作类中有以下代码可以写入此文件:
CSVWriter writer = new CSVWriter(new FileWriter("C:\isis\src\main\webapp\ReportCSV\ReportDownload.csv"), 't');
//feed in your array (or convert your data to an array)
String[] entries = "first#second#third".split("#");
writer.writeNext(entries);
writer.close();
在这里,指定确切的文件路径有效,但我想使此路径相对。我已经尝试过"\ReportCSV\ReportDownload.csv"
但它不起作用。知道我能做什么吗?任何帮助不胜感激!谢谢:)
如果你想要一个应用程序 Web 的相对路径,你需要javax.servlet.ServletContext
.
使用类org.apache.struts2.ServletActionContext
,您可以尝试:
ServletContext context = ServletActionContext.getServletContext();
String path = context.getRealPath("/ReportCSV/ReportDownload.csv");
CSVWriter writer = new CSVWriter(new FileWriter(path), 't');