Java 下载创建的csv文件
我正在用opencsv库创建一个csv文件,但我有一些小困难。 我在网上学习了一个教程:Java 下载创建的csv文件,java,csv,opencsv,writer,Java,Csv,Opencsv,Writer,我正在用opencsv库创建一个csv文件,但我有一些小困难。 我在网上学习了一个教程: private void exportProducts() { String OBJECT_LIST_SAMPLE = "C:/tmp/object-list-sample.csv"; try ( BufferedWriter writer = Files.newBufferedWriter(Paths.get(OBJECT_LIST_SAMPLE));
private void exportProducts() {
String OBJECT_LIST_SAMPLE = "C:/tmp/object-list-sample.csv";
try (
BufferedWriter writer = Files.newBufferedWriter(Paths.get(OBJECT_LIST_SAMPLE));
CSVWriter csvWriter = new CSVWriter(writer,
CSVWriter.DEFAULT_SEPARATOR,
CSVWriter.NO_QUOTE_CHARACTER,
CSVWriter.DEFAULT_ESCAPE_CHARACTER,
CSVWriter.DEFAULT_LINE_END);
) {
String[] headerRecord = {"Name", "Email", "Phone", "Country"};
csvWriter.writeNext(headerRecord);
csvWriter.writeNext(new String[]{"Sundar Pichai ♥", "sundar.pichai@gmail.com", "+1-1111111111", "India"});
csvWriter.writeNext(new String[]{"Satya Nadella", "satya.nadella@outlook.com", "+1-1111111112", "India"});
} catch (IOException e) {
LOG.error("", e);
}
}
很好,文件创建正确,但我想扩展这个。我是说
谢谢如何使用 下面是一个简单的例子:
public static void main(String[] args) throws Exception {
Path p = Files.createTempFile("Test", ".tmp");
try(
BufferedWriter writer = Files.newBufferedWriter(p, StandardOpenOption.DELETE_ON_CLOSE)
){
System.out.println(p);
for(int i = 0; i < 26; ++i){
writer.append((char)(i+'a'));
}
}
}
对于第二部分,没有足够的信息。然后根据您与用户的沟通方式创建一个文件,用文件内容回复请求,这也可以在google中找到。现在,您有了一个有效的解决方案和一些更新的想法,但还没有对其进行研究,请先检查
File.createTempFiles
返回的内容,然后再抱怨。第二部分,“基于你与用户的沟通方式”。。。因为我不知道,所以我没办法。嗨,我编辑了我的代码,添加了:File temp=File.createTempFile(“tempfile”,“.csv”);BufferedWriter writer=new BufferedWriter(new FileWriter(temp));但是现在tmp文件是空的。而且,我不知道如何用文件内容回复请求。我修改了我的代码,现在我这样做了:file temp=file.createTempFile(“tempfile”)和“.csv”);BufferedWriter writer=new BufferedWriter(new FileWriter(temp));但是tmp文件是empty@Gjord83我无法调试您的代码,我只能说这里提供的代码是一个有效的解决方案。我已经添加了在调用close
方法时删除文件的选项(因此请注意您想做什么)。谢谢,如何下载这个创建的文件?我的意思是,我想,用户,自动下载file@Gjord83你一直在问,但我仍然不知道你的用户是如何用这种方法交流的……我使用的是vaadin 8,有一个按钮可以管理产品的出口。当他点击按钮时,有一个方法可以写入csv。当csv被写入时,我想打开询问“打开或保存”的对话框
public static void main(String[] args) throws Exception {
Path p = Files.createTempFile("Test", ".tmp");
try(
BufferedWriter writer = Files.newBufferedWriter(p, StandardOpenOption.DELETE_ON_CLOSE)
){
System.out.println(p);
for(int i = 0; i < 26; ++i){
writer.append((char)(i+'a'));
}
}
}
abcdefghijklmnopqrstuvwxyz