как читать символы utf-8 в opencsv

Я пытаюсь прочитать из файла csv. Файл содержит символы UTF-8. Таким образом, на основе Проанализируйте файл CSV, содержащий символ Unicode, с использованием OpenCSV и Как читать японские поля из файла CSV в java бобы? я только что написал

CSVReader reader = new CSVReader(new InputStreamReader(new FileInputStream("data.csv"), "UTF-8"), ';');

Но это не работает. Текст >>Sí, es nuevo‹‹ корректно отображается в Блокноте, Excel и различных других инструментах для редактирования текста, но когда я анализирую файл с помощью opencsv, я получаю >>S�, es nuevo‹‹ ( í — это специальный символ, если вам интересно ;)

Что я делаю неправильно?


person tom    schedule 23.07.2012    source источник
comment
Вы уверены, что эти другие редакторы интерпретируют файл в UTF-8?   -  person aioobe    schedule 23.07.2012
comment
Почти уверен, что все показывает файл как юникод.   -  person tom    schedule 23.07.2012
comment
Загрузите куда-нибудь свой файл, я посмотрю.   -  person aioobe    schedule 23.07.2012


Ответы (4)


вы можете использовать кодировщик = UTF-16LE, я пишу файл для японского языка

person Gavin Sheng    schedule 05.12.2016

Спасибо, айообэ. Оказалось, что файл на самом деле не был UTF-8, несмотря на то, что большинство программ Win отображали его как таковой. Notepad ++ был единственным, который не отображал файл в кодировке UTF-8, и после преобразования файла данных код работает.

person tom    schedule 23.07.2012

Используйте приведенный ниже код для своей проблемы, он может быть вам полезен...

Строковое значение = URLEncoder.encode(msg[no], "UTF-8");

спасибо, Яш

person Yash    schedule 23.07.2012

Используйте ISO-8859-1 или ISO-8859-14 или ISO-8859-15 или ISO-8859-10 или ISO-8859-13 или ISO-8859-2 вместо использования UTF-8

person gurtell    schedule 28.05.2014