Библиотеки преобразования / преобразования без потерь в Java с UTF-8 на ISO-8859-1 - PullRequest
2 голосов
/ 02 марта 2010

Мне нужно выполнить преобразование символов из UTF-8 в ISO-8859-1 в Java, не теряя, например, все специальные знаки препинания UTF-8.
В идеале хотелось бы, чтобы они были преобразованы в эквиваленты в ISO (например, в UTF-8, вероятно, есть 5 различных одинарных кавычек, и хотели бы, чтобы они были преобразованы в символ одинарных кавычек ISO).

String.getBytes ("ISO-8859-1") просто не сработает в этом случае, так как потеряет специфичные для UTF-8 символы.

Вам известны какие-либо готовые отображения или библиотеки в Java, которые бы отображали определенные символы UTF-8 на ISO?

Ответы [ 3 ]

2 голосов
/ 02 марта 2010

Проект IBM ICU может быть тем, что вы ищете. Поддерживает резервные преобразования.

1 голос
/ 02 марта 2010

Рассматривали ли вы использование OutputStream с явным набором символов ISO-8859-1?

Тогда просто напишите свои символы Unicode и посмотрите, что вы получите.

0 голосов
/ 29 мая 2010

Java Development Kit имеет инструмент под названием native2ascii, который будет делать это. Использование:

native2ascii -encoding UTF-8 [ inputfile [ outputfile ] ]

Вы также можете вернуться назад, используя опцию -reverse.

См. Также список поддерживаемых кодировок для JDK 1.6 .

.
...