如何在文件中“写”一个ArrayList,我可以在写完后下载?列表中的一个元素是CSV文件中的一行。
例如:
我有ArrayList<String> myList = service.getList
比我想写在文件中。在一个简单的仅客户端应用程序中,它很容易。但我必须使用 Apache Wicket 来做到这一点。还有一个很好的,有一个我可以指定的Filebrowser,我想在哪个目录下载它。
我想,它会这样工作:
final File filetoSave = new File("Exported Objects.csv");
Writer writer = null;
try {
writer = new BufferedWriter(new FileWriter(filetoSave));
writer.write("");
for (obj o : listO) {
writer.append(o.getasd);
}
} catch (IOException ex) {
// report
} finally {
try {
writer.close();
} catch (Exception ex) {
}
}
但它不会。我必须使用 JBoss-server 。在我当地的码头服务它有效,但在JBoss服务器上,这样做是不可能的。 Wicket版本:1.4.7
答案 0 :(得分:0)
有关下载功能,请参阅Wicket的DownloadLink,并使用临时文件(File.createTempFile()
)创建可下载的CSV。您现在创建文件的方式是在容器的当前工作目录中。您可能没有该位置的写权限,但临时应该有效。
答案 1 :(得分:0)
或者使用Resource
与ResourceLink
结合使用。即时生成文件。