青
青云
Unregistered / Unconfirmed
GUEST, unregistred user!
delphi的中文处理,一直就不是很顺畅,如今我又发现一个问题在delphi2010环境下:比如:以下16进制的字符拼起来的字符时,9D 68 D5 5A 33 BD F0 BD F0 BD在windwos xp 下显示:漢語3金金在 windows 7 下显示:漢語3金金? 执行下面代码:procedure TForm1.Button1Click(Sender: TObject); var Str: ansiString;begin str:=ansiChar($9D) +ansiChar($68) +ansiChar($D5) +ansiChar($5A)+ ansiChar($33) +ansiChar($BD) +ansiChar($F0) +ansiChar($BD)+ ansiChar($F0 )+ ansiChar($BD); edit1.text:=str;end;你会发现在 win7 下最后会多个问号;这个转换问题很麻烦,我用的一个控件原来在winxp下一直好好的,发现到win7下,经常发现把半个中文搞成问号;而在winxp下,半个中文会自动被截掉;而且我还发现一个问题:以上这段代码,放在delphi7下编译后,即使放在win7环境下,也不会出现最后的问号;也就是说只有在 win7+delphi2010这个组合下,才有此问题。希望朋友能提供修正方法;