JDK1.5 игнорирует опцию jvm ibm.swaplf

Я пытаюсь преобразовать файл UTF-8 в EBCDIC IBM284, но java преобразует 0A (\n) в 0x15 вместо 0x25, который является стандартом, используемым нашим хостом. После поиска в Интернете я обнаружил, что вы можете установить для параметра ibm.swaplf значение true, чтобы изменить это поведение, но jvm видит его игнорирующим.

System.setProperty("ibm.swaplf", "true");

После преобразования я получил этот вывод:

INFO  TestParser     : UTF8: €~Ñ}ÇçLF
CRLF

INFO  HexaStrings    : ******** HEX ************************************************
INFO  HexaStrings    : €   Ñ }Ç ç LF CRLF  
INFO  HexaStrings    : e8a7c97c8ca440454400
INFO  HexaStrings    : 22ce31d3737c6a32c6da
INFO  HexaStrings    : ******** FIN HEX ********************************************

INFO  TestParser     : EBCDIC 284: ?½{ÐhHÓÆÃÙÓÆ
INFO  HexaStrings    : ******** HEX ************************************************
INFO  HexaStrings    : ?½ {Ð hHÓ Æ Ã Ù Ó Æ  
INFO  HexaStrings    : 3cb7c964c9c81c8c9c9c801
INFO  HexaStrings    : f2db30883336533393336d5
INFO  HexaStrings    : ******** FIN HEX ********************************************

Я ожидаю, что 0A будет преобразовано в 25 вместо 15. Есть идеи?

Решение: Использование IBM1145 вместо IBM284 решило эту проблему.

0 ответов

Другие вопросы по тегам