英文linux系统,部署GBK网站系统,在插件里出现乱码的问题

我们再给客户安装我们系统的时候,用delphi开发的插件出现了乱码,经过分析:

1:服务器操作系统是英文linux

2:数据库是oracle,网也内容没有乱码,不过插件里面读取出来的字段中文名称出现乱码

经过半天的研究,发现传输过来的XML里面内容是utf8,经过解析是可以解析出来,不过最后一些有很多少字符

因为时间因素,所以我们最后决定在字符串里面最后都加上了_pde,经过这样处理,发送过来的数据解析成GBK,正常

解析代码:

functionTForm1.GetUTF8ToAnsi1(Str:String):String;

var

Dest:Pchar;

Unic:PWidechar;

NewDest:PwideChar;

Text:String;

begin

try

GetMem(NewDest,1024);

Dest:=PChar(Str);

Utf8toUnicode(NewDest,Dest,1024);

//Text:=Str;

Text:=WideCharToString(NewDest);

Result:=Text;

ifpos('_',Text)>0then

Result:=Copy(Text,1,pos('_',Text)-1)

else

Result:=Text;

finally

FreeMem(NewDest);

end;

end;

虽然程序没问题,不过没有彻底解决,不过也系统能给大家一个思路。

本文地址:http://www.xszlo.com/article/2012-11-12/7498.html,转发请保留这个地址,谢谢

相关推荐