关于Access备注字段读取乱码的问题?始终没有搞定,大虾们给解决一下! ( 积分: 200 )

  • 主题发起人 主题发起人 hugo5590484
  • 开始时间 开始时间
H

hugo5590484

Unregistered / Unconfirmed
GUEST, unregistred user!
系统用了Tnt的控件,可以正常的显示Unicode编码
系统在简体下面字体显示正常,但是系统在繁体系统下面显示的却是?
我用的是
Tntmemo1.text:=widestring(adotable1.filedValues['fieldname']);
这种方法在简体系统中显示正常,而且如果Access的字段类型是文本类型的话,在繁体系统也能正常显示!但是如果字段类型是备注类型的话,那么简体系统可以显示正常,但是在繁体系统下显示是乱码? 而且我在繁体系统下面编译测试,也是乱码严重!

PS:我使用过其它的方法比如
Tntmemo1.text:=widestring(adotable1.fieldByname('fieldname'));
或者 Tntmemo1.text:=TTntmemofield(adotable.filebyName('fieldname')).aswidestring;
以上两种方法跟我上面使用的方法,结果一样!
另外我的Access中的备注类型的字段用了unicode压缩!但是我试过用是?否?结果都是一个样,简体系统显示正常,繁体系统显示乱码!
急呀!请各位大虾们帮忙解决一下!如果可以真正解决问题,不够分可以再加!

我找到个这样的文,好久之前的,但是那个人竟然没有公布答案,害我空欢喜一场:
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2686078
如果原作者看到,而且还记得怎么解决的话,可否告诉我一下
 
自已顶一下!
 
没有测试过,不过你既然用access,应该是应用的规模并不大,可不可以用两个备注字段,一个保存简体的,一个保存繁体的?
 
我是两个版本的,一个是简体,一个是繁体!
 
始终没有解决,后来换delphi 2006后正常,网上说这是delphi7以下的ADO的一个BUG,唉!郁闷!
 
记得看资料说Delphi 2006用的是Unicode编码,可能是这样变相的解决了吧。
 
用原生ADO 所有取出字段值 全用WideString
 
后退
顶部