获取各种编码(Unicode,UTF8等)的识别符
下面是常用编码的识别符, 在 Delphi(2009) 中如何获取呢?
Unicode: FF FE; BigEndianUnicode: FE FF; UTF8: EF BB BF
var
bs: TBytes;
b: Byte;
str: string;
begin
{只有 Unicode、BigEndianUnicode、UTF8 编码有识别符}
bs := TEncoding.Unicode.GetPreamble;
str := '';
for b in bs do str := Format('%s %x', [str, b]);
ShowMessage(str); {FF FE} bs := TEncoding.BigEndianUnicode.GetPreamble;
str := '';
for b in bs do str := Format('%s %x', [str, b]);
ShowMessage(str); {FE FF} bs := TEncoding.UTF8.GetPreamble;
str := '';
for b in bs do str := Format('%s %x', [str, b]);
ShowMessage(str); {EF BB BF} 在判断时,需要加上#$ 如:if HeaderStr = #$EF#$BB#$BF then {ASCII、UTF7 和 Default(默认编码) 没有识别符}
bs := TEncoding.ASCII.GetPreamble;
str := '';
for b in bs do str := Format('%s %x', [str, b]);
ShowMessage(str); {无} bs := TEncoding.UTF7.GetPreamble;
str := '';
for b in bs do str := Format('%s %x', [str, b]);
ShowMessage(str); {无} bs := TEncoding.Default.GetPreamble;
str := '';
for b in bs do str := Format('%s %x', [str, b]);
ShowMessage(str); {无}
end;
获取各种编码(Unicode,UTF8等)的识别符的更多相关文章
- mac 文本编辑器 文本编码Unicode utf-8 不适用的问题
在mac上使用默认的文本编辑器打开下载的xx.txt文件,如果文本是gbk的编码可能会出现 文本编码Unicode utf-8 不适用的打开错误,如下图 解决方式: 文本编辑---偏好设置-----打 ...
- [py]编码 Unicode utf-8
什么是字符集 在介绍字符集之前,我们先了解下为什么要有字符集.我们在计算机屏幕上看到的是实体化的文字,而在计算机存储介质中存放的实际是二进制的比特流.那么在这两者之间的转换规则就需要一个统一的标准,否 ...
- 关于python中的编码:unicode, utf-8, gb2312
计算机早期是只支持ASCII码的,经过long long的发展,出现了这些支持世界上各种语言字符的编码:unicode, utf-8, gb2312. 对于unicode, utf-8, gb2312 ...
- 编码 Unicode utf-8
编码的发展史: 一开始计算机只在美国使用.8位的字节可以组合出256种不同的状态.他们将0到32种状态规定为”控制码“,后来又用其中32号以后的状态表示空格.标点符号.数字和大小写字母.这样一直编到了 ...
- 一句话理解字符编码(Unicode ,UTF8,UTF16)
Unicode和ASCII码属于同一级别的,都是字符集,字符集规定从1到这个字符集的最大范围每个序号都各表示什么意思.比如ASCII字符集中序号65表示"A". 那接下来的UTF8 ...
- Python-字符编码-Unicode UTF-8
什么是字符编码? --世界上有很多国家,每个国家都有自己独特的语言,所以在计算机普及的当今世界, 每个国家都有自己的字符编码,本国的软件运行在其他国家的机器上,会出现乱码, 有utf-8,gbk等各种 ...
- 【转】关于字符编码,你所需要知道的(ASCII,Unicode,Utf-8,GB2312…)
转载地址:http://www.imkevinyang.com/2010/06/%E5%85%B3%E4%BA%8E%E5%AD%97%E7%AC%A6%E7%BC%96%E7%A0%81%EF%BC ...
- 关于字符编码,你所需要知道的(ASCII,Unicode,Utf-8,GB2312…)
字符编码的问题看似很小,经常被技术人员忽视,但是很容易导致一些莫名其妙的问题.这里总结了一下字符编码的一些普及性的知识,希望对大家有所帮助. 还是得从ASCII码说起 说到字符编码,不得不说ASCII ...
- 关于编码:Unicode/UTF-8/UTF-16/UTF-32
关于编码,绕不开下面这些概念 ①Unicode/UTF-8/UTF-16/UTF-32 ②大小端字节序(big-endian/little-endian) ③BOM(Byte Order Mark) ...
随机推荐
- C#基础之Assembly
一直以来,我们都在用C#编写程序,编写程序的时候,我们用到继承.多态.接口以及泛型,我们也都明白子类可以继承抽象类,并能够重写父类的抽象方法,可是大家是否想过,如下几个问题: 1.凡树必有根和叶,类的 ...
- Struts2优缺点
优点: (1) 实现了MVC模式,层次结构清晰,使程序员只需关注业务逻辑的实现. (2) 丰富的标签库,大大提高了开发的效率. (3) Struts2提供丰富的拦截器实现. (4) 通过配置文件, ...
- 再说C模块的编写(1)
[前言] 在<Lua“控制”C>中对Lua调用C函数做了初步的学习,而这篇才是重中之重,这篇文章会重点的总结C模块编写过程中遇到的一些问题,比如数组操作.字符串操作和C函数的状态保存等问题 ...
- kafka知识点详解
第一部分:kafka概述 一.定义(消息引擎系统) 一句话概括kafka的核心功能就是:高性能的消息发送与高性能的消息消费. kafka刚推出的时候是以消息引擎的身份出现的,它具有强大的消息传输效率和 ...
- git配置公钥
1.在linux的命令行下,或者是windows上Git Bash命令行窗口中键入: ssh-keygen -t rsa -C "gitee.com" 2..一直按回车(Enter ...
- 10_27_requests模块
1.get请求: 看源码 import requests url= "https://www.baidu.com" res = requests.get(url) print(re ...
- PID实战-STM32电机PWM力矩调节系统
系统阐述:
- elk安装时最常见的报错
1.在启动kibana的时候报一下错误 max file descriptors [4096] for elasticsearch process likely too low, increase t ...
- WPF:通过名字找控件
var plotBorder = (Border)FindName(string.Format("PlotBorder{0}", i))
- TCP/IP协议、HTTP协议、SOCKET通讯详解
1.TCP连接TCP(Transmission Control Protocol) 传输控制协议.TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握确认建立一个连接.位码即tcp标志位 ...