Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > java net beans и ms excel


Автор: Atiskara 28.6.2010, 12:30
происходит такая интересная вещь. есть модуль, который обращается обращается к бд и формирует отчет, а затем импортирует этот отчет в эксель.

Код

response.setContentType("application/vnd.ms-excel;charset=UTF-8");   

кодировку вроде задаю. 

В коде также используется массив стринговых констант состоящий из 10 элементов.
Код

String typ111[]={"Дв юл тр", "Дв юл ис", "Дв фл тр", "Дв фл ис", "Дв фу тр", "Ср юл тр", "Ср юл ис", "Ср фл тр", "Ср фл ис", "Ср фу тр"};


Так вот, если этот массив содержит 5 элементов, то отчет отображается без проблем. Стоит только увеличить размер массива, кодировка съезжает, и в экселе отображается Вьетнамская(виндоус) вместо юникода.  А если все 10 элементов обозвать "Aaaa", то опять все становится нормально.
При выгрузке в текстовый документ проблем с кодировкой не возникает.

Подскажите плиз в чем проблема? smile 

Автор: Atiskara 1.7.2010, 06:04
Разобралась.
Открыв код сформировавшегося отчета нашла такую строчку
Код

<meta http-equiv=Content-Type content="text/html; charset=windows-1258">

где по идее charset должен быть utf-8

ну и явно в коде добавила
Код

out.println("<meta http-equiv=Content-Type content=application/vnd.ms-excel;charset=UTF-8 />");

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)