我使用jt400从as400-db2上的数据库获取数据。

我的数据库使用ccsid 37编码。
我只用波兰字母有问题。
如何强制jt400使用正确的编码?

我试过了

jdbc:as400://MY_SYSTEM/LIBRARY;translate binary=true

AS400Text converer = new AS400Text(stringFromDb.length(), 37);
String stringAfterConversion = converter.toObject(stringFromDb.getBytes());


但这不起作用

最佳答案

CCSID 37是英语,不包含某些波兰语字符。波兰语CCSID为1153或870(无欧元符号)。

您可以在此处查看CCSID 37(字符集697)中包含的符号:ftp://ftp.software.ibm.com/software/globalization/gcoc/attachments/CS00697.pdf

您可以在此处查看CCSID 1153(字符集1375)中包含的符号:ftp://ftp.software.ibm.com/software/globalization/gcoc/attachments/CS01375.pdf

如果数据库字段包含CCSID 37,则将无法存储1153年缺少CCSID的字符。将转换常见字符。您可以尝试更改数据库以使用UTF-16或CCSID1200。该数据库包含CCSID 37和CCSID 1153中的所有字符。

关于java - jt400上的AS2上的DB2编码问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37409928/

10-11 21:45