Я пытаюсь экспортировать данные в файл CSV через Java, и у меня есть код для этого, но похоже, что файл CSV не выводится. Может кто-нибудь сказать мне, что случилось? Я хотел бы вместо того, чтобы сохранять файл где-нибудь, я хотел бы, чтобы он был напрямую экспортирован пользователю.
РЕДАКТИРОВАТЬ: На случай, если это не ясно, я не хочу, чтобы файл сохранялся где-нибудь, кроме хотели бы, чтобы он автоматически выводился для пользователя, т.е. они нажимают кнопку «Экспорт», получают окно «Выполнить / Сохранить результаты.csv» и открывают файл. В настоящее время файл сохраняется, поэтому я знаю, что метод работает, как раз наоборот.
public static void writeToCSV(List<Map> objectList) {
String CSV_SEPARATOR = ",";
try {
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream("results.csv"), "UTF-8"));
for (Map objectDetails : objectList) {
StringBuffer oneLine = new StringBuffer();
Iterator it = objectDetails.values().iterator();
while (it.hasNext()) {
Object value = it.next();
if(value !=null){
oneLine.append(value.toString());
}
if (it.hasNext()) {
oneLine.append(CSV_SEPARATOR);
}
}
bw.write(oneLine.toString());
bw.newLine();
}
bw.flush();
bw.close();
} catch (UnsupportedEncodingException e) {
} catch (FileNotFoundException e) {
} catch (IOException e) {
}
}