字符集转换问题,从GB2312到ISO-8859-1 ( 积分: 100 )

  • 主题发起人 jianghaha
  • 开始时间
J

jianghaha

Unregistered / Unconfirmed
GUEST, unregistred user!
我在做一个接口程序,要求客户端发送XML数据。服务器端通过XSD文件对客户端发送的XML
文件进行格式校验。由于XML数据中存在中文,我原来将XML文件的encoding设置为GB2312。但是这样的XML在用XSD文件校验时,出现以下问题:我自定义的一个数据类型string1to20(长度不大于20的字符串)。结果可以输入20个汉字。我原本以为只能输入10个汉字的。于是我把GB2312改成ISO-8859-1,这样就可以限制10个汉字了。但是我用TXMLDocument解析XML文件后,所有的汉字都变成乱码。现在我的问题就在这里,校验时要用ISO-8859-1,解析时用GB2312,我不知道该如何转换。
我在TXMLDocument中直接将encoding设置成GB2312后,savetofile。但是汉字就变成乱码了。请各位大虾多多指点。 如果谁能够提供从GB2312到ISO-8859-1直接转换的函数最好了。
 
J

jianghaha

Unregistered / Unconfirmed
GUEST, unregistred user!
我在做一个接口程序,要求客户端发送XML数据。服务器端通过XSD文件对客户端发送的XML
文件进行格式校验。由于XML数据中存在中文,我原来将XML文件的encoding设置为GB2312。但是这样的XML在用XSD文件校验时,出现以下问题:我自定义的一个数据类型string1to20(长度不大于20的字符串)。结果可以输入20个汉字。我原本以为只能输入10个汉字的。于是我把GB2312改成ISO-8859-1,这样就可以限制10个汉字了。但是我用TXMLDocument解析XML文件后,所有的汉字都变成乱码。现在我的问题就在这里,校验时要用ISO-8859-1,解析时用GB2312,我不知道该如何转换。
我在TXMLDocument中直接将encoding设置成GB2312后,savetofile。但是汉字就变成乱码了。请各位大虾多多指点。 如果谁能够提供从GB2312到ISO-8859-1直接转换的函数最好了。
 

Similar threads

回复
0
查看
662
不得闲
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
731
DelphiTeacher的专栏
D
D
回复
0
查看
736
DelphiTeacher的专栏
D
顶部