将ArrayList保存到CSV文件ApacheWicket中
如何在文件中“写入”ArrayList,并在写入后下载?列表中的一个元素是CSV文件中的一行 例如: 我有一个将ArrayList保存到CSV文件ApacheWicket中,wicket,savefiledialog,Wicket,Savefiledialog,如何在文件中“写入”ArrayList,并在写入后下载?列表中的一个元素是CSV文件中的一行 例如: 我有一个ArrayList myList=service.getList 比我想写在一个文件。在一个简单的客户端应用程序中,这将很容易。但是我必须使用ApacheWicket来完成它。另外,如果有一个文件浏览器,我可以在其中指定我要下载它的目录,那将非常好 我想,它会这样工作: final File filetoSave = new File("Exported Objects.csv");
ArrayList myList=service.getList
比我想写在一个文件。在一个简单的客户端应用程序中,这将很容易。但是我必须使用ApacheWicket来完成它。另外,如果有一个文件浏览器,我可以在其中指定我要下载它的目录,那将非常好
我想,它会这样工作:
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服务器。在我本地的jetty上,它工作正常,但在JBoss服务器上,不可能这样做。
Wicket版本:1.4.7有关下载功能,请参阅Wicket's,并使用临时文件(
file.createTempFile()
)创建可下载的CSV。现在创建文件的方式是在容器的当前工作目录中。您可能没有在该位置的写入权限,但temp应该可以工作。或使用资源
与资源链接
组合使用。动态生成文件。升级到wicket的更新版本,因为1.4.7存在安全问题。至少有15个补丁版本可用:最新的1.4版本是1.4.22。也就是说,1.4是生命的终结,你真的应该考虑升级到6xTx,你的输入。问题是我不能自己更新它。我必须为公司开发下载的可能性。我知道,我们应该更新。:)什么意思?我应该加上这个吗?