Выгружаю [русскоязычные] данные в Excel (формат .xls) из планшета на Android.
Часть данных прописывается в коде, часть берётся из SQLite.
При открытии получаемого файла:
в Linux (Libreoffice) - с кодировкой всё нормально;
в Windows 7 (MS Excel) - сплошные кракозябры вида Заказ в„–
Онлайн-декодеры с подсказками UTF8 -> CP-1251 и последующие преобразования в коде типа
new String(text.getBytes("windows-1251"),"utf-8")
так и не помогли (получалось только хуже пїЅпїЅпїЅпїЅпїЅпї).
(Также были попытки перевести таким образом из одних имеющихся кодировок в другие и наоборот, но в Винде любая из них всё так же отображается кракозябрами).
В каком месте я что-то делаю не так?
Ответ
(скопировано из моего комментария к вопросу) Судя по всему, ваша версия Excel не может распознать файл в кодировке UTF-8 (что странно). Для того чтобы выгрузить данные в файл в CP1251, используйте: new OutputStreamWriter(new FileOutputStream(fileName), Charset.forName("CP1251"))
Комментариев нет:
Отправить комментарий