|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2017/11/18 9:01:48 |
标题: |
delphi xe10 utf8 解码问题 |
浏览:1309 |
|
加入我的收藏 |
楼主: |
delphi xe10 utf8 解码问题 我发一段 32,227,128,144,49,55,53,227,128,145,230,185,150
我转换为sByte: Tbytes;
我用 utf8toAnsi(ansistring(sByte)) 会有乱码的现象,请问,要什么解决
xe10
先谢谢各位
----------------------------------------------
- |
作者: |
|
2017/11/18 9:18:44 |
1楼: |
有啥问题?
此帖子包含附件:
大小:31.3K |
----------------------------------------------
--
|
作者: |
|
2017/11/18 9:21:01 |
2楼: |
没显示完整 后面?号没显示出来,你用 lvs :string lvs := utr8toansi 下断看看
----------------------------------------------
-
|
作者: |
|
2017/11/18 9:48:47 |
3楼: |
const Bytes: TBytes = [32, 227, 128, 144, 49, 55, 53, 227, 128, 145, 230, 185, 150];
S := TEncoding.UTF8.GetString(Bytes);
2楼的结果是对的,“湖”utf8 占三个字节,就是 230,185,150
----------------------------------------------
Delphi4Linux Delphi三层/FireDAC 技术群:734515869 http://www.cnblogs.com/rtcmw
|
作者: |
|
2017/11/18 11:10:16 |
4楼: |
跨平台 字符串 讨论(以及 字符串编码 讨论) http://www.2pascal.com/forum.php?mod=viewthread&tid=1654&fromuid=4 (出处: 2Pascal-新时代的Pascal)
只有 3 楼 才是正解。
----------------------------------------------
(C)(P)Flying Wang
|
作者: |
|
2017/11/18 14:51:07 |
5楼: |
不好意思,我的问题,,, 32,227,128,63,55,53,227,128,145,230,185,150,229,140,63,55,55,32,227,128,144,232,128 我多加些byte
我编码会出现?号
----------------------------------------------
-
|
作者: |
|
2017/11/18 16:02:04 |
6楼: |
别乱在后面加byte,这样是不对的,一定把汉字或者其他文字转换byte后在转码。
----------------------------------------------
-
|
作者: |
|
2017/11/18 17:15:27 |
7楼: |
问题解决了,非常感觉2楼 bahamut8348
----------------------------------------------
-
|
|