Hello,
我在delphibbs上看到你的关于内码的问题,因为我目前也在写一个项目,碰到了类似的问题,有一些小体会愿与你分享。
我的系统在Delphi6下开发,要处理的资料可能来自于不同的内码系统,故进行数据读写都要求考虑内码问题。我的办法是
1. 在任何读写过程中都使用widestring 类型。Ado数据操作不能使用asstring,而要使用fieldbyname(‘’).value之类的方法。
2. 在显示的时候,一定注意了要保证你的界面对象支持widestring 而不是string. 例如,普通的dblabel就只能接受string类型,当给他赋值widestring 时它还是要将其转换为string , 这时如果内码不同则会出现乱码,所以,有必要重载dblabel 让他本身就有widestring 成员来接受widestring值。
另外,你的数据库系统要注意使用nchar之类的数据类型以正确存储数据。
小小体会,与你共享。