Установить кодировку для книги Excel POI Apache

Я использую библиотеку Apache POI для создания и заполнения листа Excel на C # .NET.

Однако проблема, с которой я столкнулся, заключается в том, что данные, которыми я заполняю свою книгу, содержат некоторые специальные символы (например, é, á, í и т. Д.). Мне сказали, что мне нужно создать рабочий лист с кодировкой UTF-8, чтобы наши партнеры могли автоматически загружать эти файлы Excel.

Кто-нибудь, у кого есть опыт использования библиотеки POI, знает, как установить это значение?


person 109221793    schedule 21.01.2011    source источник


Ответы (1)


Apache POI обычно используется из Java, поэтому я не знаю, влияет ли тот факт, что вы используете C #, на вещи или нет ...

Если вы использовали POI на чистом Java, вы просто создаете Java String со своими символами как обычно. Затем передайте эту строку в POI при настройке содержимого ячейки. POI будет хранить текст как ASCII или Unicode в зависимости от содержимого, и вам не нужно ничего делать. (Кодировка выполняется за вас)

Я предлагаю вам убедиться, что вы правильно создаете строку с международными символами в ней, затем попробуйте передать эту строку в POI и посмотреть, что произойдет. Надеюсь, C # будет вести себя так же, как Java, и все будет в порядке!

(В противном случае вам может потребоваться изучить ваш мост C # / Java, поскольку, пока в Java появляются правильные строки Unicode, POI должен правильно обрабатывать все кодирование для вас)

person Gagravarr    schedule 31.03.2011