OpenCSV записывает неэкранированный escape-символ

1

Я использую OpenCSV 2.3 для чтения и записи данных файлов, но когда я переключаю Windows PC на японский язык, то я замечаю, что метод записи OpenCSV внутренне использует Print writer, который преобразует yen char в\В результате - файл CSV созданный заканчивается с unescaped \, и чтение такого файла с помощью CSVReader завершается с ошибкой.

Как я могу исправить эту проблему?

  • 1
    какого писателя вы используете?
  • 0
    ИМО, это будет + au.com.bytecode.opencsv.CSVWriter + ??
Показать ещё 1 комментарий
Теги:
opencsv

1 ответ

1

Дальнейшее исследование этой проблемы и заметило, что это не проблема метода CSVWrite. Хотя, файлы CSVWrite работают отлично.

Теперь, где проблема?

Раньше я использовал FileWriter, он использует кодировку по умолчанию для системы. (Другими словами, если мы используем FileWriter, тогда кодирование файлов записи/чтения зависит от милости Writer).

Итак, я попробовал/использовал

csvReader = new CSVReader(new BufferedReader(new InputStreamReader(new FileInputStream(inputFile), "UTF-8")));

чтобы сообщить читателю и писателю только чтение и запись файла в указанной системе кодирования, а не по умолчанию для систем.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню