zoukankan      html  css  js  c++  java
  • Delphi2010生成GB2312字库乱码问题

      用Delphi2010做一个点阵字库软件,字库生成部分是从一个用Delphi2007做旧的程序里扣出来的。点阵字库软件完成后生成GB2312字库在LED控制卡上显示为乱码。知道Delphi版本高于2009(含),则Delphi是unicode版本,旧程序无问题,那么问题肯定出在编码转字符部分,于是查到

      S : String;

          S := Chr(Q) + Chr(W); // Q 和 W 分别是GB2312区域码的高字节和低字节

    在GB2312编码表找到字符“啊”的区域码为 B0A1,用

        ShowMessage(Chr($B0) + Chr($A1););

    显示出字符果然不对。

    Delphi版本高于2009(含),则Delphi是unicode版本,函数Chr返回的是对应编码的unicode字符。对于英文字母、数字等,和低版本的返回结果一致;对于汉字,则一般返回对应编码的unicode字符。

    于是改用AnsiChar();

      ShowMessage(AnsiChar($B0) + AnsiChar($A1));

    显示字符为“啊”。

    至此问题解决。

  • 相关阅读:
    Vue响应式之依赖收集与派发更新
    异步组件(工厂函数)笔记总结
    vue源码学习
    render函数使用
    通过Vue.extned动态创建组件
    Runtime-Compiler和Runtime-Only的区别
    vue中bus的使用
    vue中全局的message
    css通用
    js通用函数封装
  • 原文地址:https://www.cnblogs.com/LittleTiger/p/4431340.html
Copyright © 2011-2022 走看看