- 人气:
- 放大
- 缩小
- 二维码
- 赞赏
如何在delphi中获取字符串字节数?
如果使用TEncoding类的GetByteCount方法,则可以轻松获取字符串中的字节数。
字符串的字节数取决于字符串的编码(字符代码)。
首先,获得一个TEncoding对象,该对象支持您要获取的编码。
将代码页的名称或字符集传递给TEncoding.GetEncoding方法的参数。
Encoding := TEncoding.GetEncoding(932);
// Encoding := TEncoding.GetEncoding('Shift_JIS');
接下来,使用您想要获取字节数的字符串作为参数调用GetByteCount。
Len := Encoding.GetByteCount('你好,你好');
下面的示例程序显示字符串编码和字节数。
var
Encoding: TEncoding;
Len: Integer;
begin
//Shift_JIS
Encoding := TEncoding.GetEncoding(932);
Len := Encoding.GetByteCount('你好,你好');
Encoding.Free;
Writeln(Format('%s = %d', ['Shift_JIS', Len])); //出力:Shift_JIS = 10
//EUC-JP
Encoding := TEncoding.GetEncoding(20932);
Len := Encoding.GetByteCount('你好,你好');
Encoding.Free;
Writeln(Format('%s = %d', ['EUC-JP', Len])); //出力:EUC-JP = 10
//JIS(ISO-2022JP)
Encoding := TEncoding.GetEncoding(50220);
Len := Encoding.GetByteCount('你好,你好');
Encoding.Free;
Writeln(Format('%s = %d', ['JIS', Len])); //出力:JIS = 16