Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java as400使用克罗地亚数据创建xml_Java_Xml_Ibm Midrange - Fatal编程技术网

Java as400使用克罗地亚数据创建xml

Java as400使用克罗地亚数据创建xml,java,xml,ibm-midrange,Java,Xml,Ibm Midrange,我编写了一个在as/400上运行的Java类,用于从DB2数据构建XML文件。 我使用本机驱动程序(com.ibm.db2.jdbc.app.DB2Driver)访问数据库,数据采用克罗地亚格式,带有特殊字符,如PETROVEÅKI、VRANIñ等。 存储填充到XML文件中的数据的DB表具有CCSID 65535。 我的第一个问题是,驱动程序不接受作业的默认CCSID(65535),因此在调用CL程序时,我会将CCSID设置为870(应该是克罗地亚人)。 通过这个设置,我可以成功地运行Java类

我编写了一个在as/400上运行的Java类,用于从DB2数据构建XML文件。 我使用本机驱动程序(com.ibm.db2.jdbc.app.DB2Driver)访问数据库,数据采用克罗地亚格式,带有特殊字符,如PETROVEÅKI、VRANIñ等。 存储填充到XML文件中的数据的DB表具有CCSID 65535。 我的第一个问题是,驱动程序不接受作业的默认CCSID(65535),因此在调用CL程序时,我会将CCSID设置为870(应该是克罗地亚人)。 通过这个设置,我可以成功地运行Java类,但是特殊字符被翻译成与原始字符不匹配的其他字符。 这是我第一次与这些特殊角色合作,我不知道如何解决它。
任何提示都将不胜感激。

如果作业CCSID为65535,则可能所有文件都是。尝试将文件的CCSID更改为870,然后查看翻译是否有效。65535的意思是“二进制-不要翻译”。

您好,谢谢您的建议,我终于找到了问题所在。这是由于显示了IFS文件(IFS文件列表的选项5)。该程序可能使用作业CCSID在文件中显示字符。在我的(交互式)工作中,我会这样做:将ccsid更改为870,构建xml文件,恢复原始ccsid(65535)。当我查看xml文件时,会看到错误的字符。如果我将job ccsid更改为870,然后显示xml文件,则字符都是正确的。