Delphi中让sqlite显示Unicode计算机等级考试

文章作者 100test 发表时间 2010:01:01 09:27:58
来源 100Test.Com百考试题网


  编辑特别推荐:

  全国计算机等级考试(等考)指定教材

  全国计算机等级考试学习视频

  全国计算机等级考试网上辅导招生

  全国计算机等级考试时间及科目预告

  百考试题教育全国计算机等级考试在线测试平台

  全国计算机等级考试资料下载

  全国计算机等级考试论坛

  如何应付二级考试中的公共基础知识

  全国计算机等级考试上机考试应试技巧

  最近做了一个小程序,用到了SQLite,后台用Python写的分析程序,将数据插入(更新)到SQLite数据库中,Delphi的程序周期显示数据库的内容。Delphi访问SQLite采用的Aducom组件。Python插入的数据编码都是采用的UTF-8,而Delphi的DBGrid、 cxGrid控件显示的却是乱码,主要是因为Delphi7不支持Unicode造成的,因此要想办法让他支持。
  尝试了多种方法,包括使用据说支持Unicode的TMS Unicode Component、SUIPack等,都不好使。最后还是用了简单的方法,在数据集组件的需要显示的字段的OnGetText事件,在事件处理中,对数据进行Unicode到GB的转换。
  view plaincopy to clipboardprint?procedure unicode2gb(const unicodestr:string. var GbStr:String). var SourceLength:integer. DoneLength:integer. AscNo:integer. Byte1,Byte2,Byte3:integer. begin GbStr:=’’. if Trim(unicodestr)=’’ then exit. SourceLength:=Length(UnicodeStr). DoneLength:=1. repeat AscNo:=ord(UnicodeStr[DoneLength]). case (AscNo and $E0) of $E0:begin Byte1:=(AscNo and $0f) shl 12. Inc(DoneLength). if DoneLength

相关文章


如何将界面代码和功能代码分离(基于Delphi_VCL)计算机等级考试
自制支持文件拖放的VCL组件计算机等级考试
在打印或打印预览前如何获取报表页数计算机等级考试
代码示例:你是真的对Delphi很了解么计算机等级考试
Delphi中让sqlite显示Unicode计算机等级考试
在DELPHI程序中使用ADO对象存取ODBC数据库计算机等级考试
Delphi4的Winsocket编程计算机等级考试
TeamSource使用说明计算机等级考试
Delphi中获取打印机设备名和端口名计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛