问题来源: http://www.cnblogs.com/del/archive/2008/11/22/1284923.html#1378410



Delphi 2009 默认的编码是多字节编码(MBCS), Delphi 这样表示它: TEncoding.Default.

下面是多字节编码与汉字之间转换的例子:


unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls;typeTForm1 = class(TForm)Button1: TButton;Button2: TButton;Button3: TButton;procedure Button1Click(Sender: TObject);procedure Button2Click(Sender: TObject);procedure Button3Click(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}{汉字到多字节编码}
procedure TForm1.Button1Click(Sender: TObject);
varstream: TStringStream;b: Byte;s: string;
beginstream := TStringStream.Create('我们', TEncoding.Default);s := '';for b in stream.Bytes do s := Format('%s%x ', [s,b]);ShowMessage(s); {CE D2 C3 C7}stream.Free;
end;{多字节编码到汉字}
procedure TForm1.Button2Click(Sender: TObject);
varstream: TStringStream;
beginstream := TStringStream.Create;stream.Size := 4;stream.Bytes[0] := $CE; stream.Bytes[1] := $D2;stream.Bytes[2] := $C3;stream.Bytes[3] := $C7;ShowMessage(stream.DataString); {我们}stream.Free;
end;{把多字节编码的字符串转换到汉字}
procedure TForm1.Button3Click(Sender: TObject);
varstr: AnsiString;stream: TStringStream;i: Integer;
beginstr := 'CED2C3C7';stream := TStringStream.Create;stream.Size := Length(str) div 2;for i := 1 to Length(str) doif Odd(i) thenstream.Bytes[i div 2] := StrToIntDef(Concat(#36,str[i],str[i+1]), 0);ShowMessage(stream.DataString); {我们}stream.Free;
end;end.

汉字与多字节编码的转换 - 回复 不知道 的问题相关推荐

  1. 中文汉字到URL编码的转换

    在使用 Google或者 百度进行中文搜索的时候,我们会发现搜索过程中URL地址栏会变成一串格式字符串编码,我们编写程序经常也需要进行中文汉字到这类URL编码的转换,这里介绍两段相关的转换函数. 对于 ...

  2. .Net(C#)汉字和Unicode编码互相转换

    /// <summary> /// <summary> /// 字符串转Unicode /// </summary> /// <param name=&quo ...

  3. %e5 转换汉字 php,Linux Shell下把汉字转换为Url编码_自学php网

    在linux 的shell环境下有一个od命令可以把文件按不同的进制的ascii码输出,该功能可以完成在linux shell下把汉字转换为url编码的任务. url编码是十六进制的形如%E6%9C% ...

  4. gbk编码在线转换工具_TOOLFK工具-在线汉字/字母/人民币/简繁体转换工具

    本文要推荐的[TOOLFK]在线汉字/字母/人民币/简繁体转换工具,提供简繁体在线转换.人民币大写转换.字母大小写互转.汉字转拼音在线日常使用工具. 網站名稱:ToolFk 網站鏈結:https:// ...

  5. 用vc++如何得到汉字的Unicode编码?

    UNICODE环境设置 在安装Visual Studio时,在选择VC++时需要加入unicode选项,保证相关的库文件可以拷贝到system32下. UNICODE编译设置: C/C++, Prep ...

  6. Visual Studio——多字节编码与Unicode码

    多字节字符与宽字节字符 1) char与wchar_t 我们知道C++基本数据类型中表示字符的有两种:char.wchar_t.  char叫多字节字符,一个char占一个字节,之所以叫多字节字符是因 ...

  7. VC++中字符串编码的转换

    在以前VC++6.0中默认的字符集是多字节字符集(MBCS:Multi-Byte Character Set),而VS2005及以后默认的字符集是Unicode,这样导致以前在VC6.0中非常简单实用 ...

  8. EBCDIC 与 GBK 的字符编码及其转换(转)

    概览 有些用户在使用 AIX 时在字符编码方面遇到一些困惑,请看下面的场景: 1,用户用从 AIX 利用 FTP 客户端登录上 IBM i,切换到某个 Library/File,然后 get 其中的某 ...

  9. 字节码:ASCII编码:单字节编码,ANSI编码:多字节编码,UNICODE编码:宽字节编码

    字符字节与编码 字符是人们常用的一些记号,比如"1", "汉", "お","℃"等等,包括各种语系的语言和一些符号都可以 ...

  10. python转utf-8编码_python3中utf-8编码如何转换?

    python中的编码之间可以相互转换,这个我们在之前的文章中有讲到.那小编开始提问了,utf-8编码如何转换?有的小伙伴可能对这个词模模糊糊的有点印象.但是如果我们提到unicode编码大家就会觉得很 ...

最新文章

  1. 两度延期,K项目终于要开工了!
  2. AI 初学者必须要了解的术语盘点
  3. ssh开发实战之整合篇
  4. 3rd_party/flatbuffers/tmp/flatc: No such file or directory
  5. ***后门与密码破解
  6. 三维数组设置索引_10-Unity入门学习之C#基础9「数组」
  7. JS常用属性方法大全
  8. 计算机or笔记本,笔记本or台式机?大学生第一个烦恼被它解决了
  9. 多线程-非共享数据(python 版)
  10. 迷宫问题(栈解决)--2015年8月9日19:23:23v1.0版
  11. 在vSAN中存储ESXi核心转储和暂存分区(2074026)
  12. kubernetes源码阅读笔记——Kubelet(之三)
  13. Android 手机的坐标
  14. 使用maven给spring项目打可直接运行的jar包(配置文件内置外置的打法)
  15. Egret入门学习日记 --- 第十八篇(书中 8.5~8.7 节 内容)
  16. kali下一键破解wifi密码
  17. 【产品经理】产品经理进阶之路(六):互联网思维详解
  18. 实验六 —— 火焰传感器
  19. flex布局 justify-content 新属性值 space-evenly
  20. 如何用计算机接收光纤无线电视,无线路由器怎么连接智能电视机攻略

热门文章

  1. Linux音频驱动-AOSC之Codec
  2. Androd UI学习之ImageSwitcher
  3. java的split的正则_Java正则表达式之split()方法实例详解
  4. blk_queue_bio函数学习
  5. H264码流解析及NALU
  6. swagger 接口参数顺序_Swagger常用参数用法
  7. js获取post请求参数_SpringMVC请求参数获取时,有这六种方式值得学习
  8. c语言万年历自动翻页,C语言实现万年历效果
  9. js获取td的html,js中获取 table节点各tr及td的内容简单实例
  10. 浙大计算机学硕名额,浙大计算机学硕复试线399分,专硕375,不愧被称为“炸大”...