求教如何将字节数组 转换成 字符串 ?
var
b: TBytes;
begin
b := TEncoding.UTF8.GetBytes(Edit1.Text); //当前得到了字节数组
这里咋写?
end;
以下为测试的正确数据:
ASCII:测试一下
UTF8:E6 B5 8B E8 AF 95 E4 B8 80 E4 B8 8B 各种语言应该都有一些对应的函数,我知道php的是可以序列化,go里面直接用符号或者string包也可以 MultiByteToWideChar c03xp 发表于 2020-12-8 12:32
MultiByteToWideChar
@c03xp
为啥报错?
var
b: TBytes;
begin
b := TEncoding.UTF8.GetBytes('妹妹'); //当前得到了字节数组
ShowMessage(MultiByteToWideChar(b));
end;
本帖最后由 klamauk 于 2020-12-8 12:49 编辑
UTF8:E6 B5 8B E8 AF 95 E4 B8 80 E4 B8 8B
转为
ASCII:测试一下
使用Utf8ToAnsi
var
b:Array of Byte=($E6,$B5,$8B,$E8,$AF,$95,$E4,$B8,$80,$E4,$B8,$8B);
pc:pchar;
begin
pc:=pchar(@b);
writeln(Utf8ToAnsi(pc));
readln;
end.
冥界3大法王 发表于 2020-12-8 12:44
@c03xp
为啥报错?
你好像已经得到了字符串,现在要用默认字符集ansi显示,那应该用WideCharToMultiByte转换一下,参数很多,不只一个。不过如果delphi已经提供了转换函数,用delphi的更好
页:
[1]