2015-10-30 3 views
0

Я использую Apache POI 3.13 для генерации excel в кириллице.Apache POI encoding

HSSFSheet sheet = workbook.createSheet("Лист");

Я также попытался:

HSSFSheet sheet = workbook.createSheet(
    new String("Лист".getBytes(Charset.forName("UTF-8"))) 
); 

Но я получаю эту ошибку:

enter image description here

+0

Возможно, клиент, которого вы используете по умолчанию для Windows 1252? – Mena

+0

Возможно, вы также захотите опубликовать код, который вы используете, чтобы заполнить таблицу. – Mena

+2

Когда вы сохраняете свою java-программу в своем редакторе, какую кодировку текста вы ее сохраняете? И когда вы компилируете программу, вы говорите 'javac' ту же кодировку? – Gagravarr

ответ

1

Использование XSSFSheet вместо HSSHSheet, как это.

XSSFSheet sheet = workbook.createSheet("Лист"); 

Для этого использования poi-ooxml 3.9. При сохранении java-файла появится предупреждающее сообщение. Нажмите Save as UTF-8. Вот изображение предупреждающего сообщения: screenshot

+1

Добро пожаловать в переполнение стека! хороший ответ, вы можете улучшить свой ответ с минимальным форматированием (я отредактировал ваш пост для этого) – alexbt