我正在尝试动态创建一个包含一堆 csv 文件以从 servlet 返回的 zip 文件,这非常令人困惑。一点指导会很棒。以下是我需要以某种方式协同工作的代码块:
// output stream coming from httpResponse, thats all fine
ZipOutputStream zip = new ZipOutputStream(outputStream);
// using the openCSV library to create the csv file
CSVWriter writer = new CSVWriter(Writer?);
// what writer do I use? I want to write to memory, not a file
writer.writeNext(entries);
writer.close();
// at this point should I have the csv file in memory somewhere?
//and then try to copy it into the zip file?
int length;
byte[] buffer = new byte[1024 * 32];
zip.putNextEntry(new ZipEntry(getClass() + ".csv"));
// the 'in' doesn't exist yet - where am I getting the input stream from?
while((length = in.read(buffer)) != -1)
zip.write(buffer, 0, length);
zip.closeEntry();
zip.flush();