Delphi 中String、ANSIString、TBytes之间的转换

技术Delphi 中String、ANSIString、TBytes之间的转换 Delphi 中String、ANSIString、TBytes之间的转换这个问题要从最近一个项目谈起,服务器端要求UTF

德尔斐中字符串、转换、字节之间的转换

这个问题要从最近一个项目谈起,服务器端要求UTF8编码特尔斐内部是UTF16编码,为了避免风险我将代码中数据都定义为翻译,但实际还是除了些问题。

德尔福七下

缓冲器是tbytes型温度是线型

温度:=字符串(指针(缓冲区));

setlength(温度,长度(缓冲区));

复制内存(指针(临时)、@缓冲区[0]、长度(缓冲区));到了元素氙的符号后,也许经过点网洗礼后,下面的代码更好理解,当然这是站在开发者的角度var。

Buf : TBytes

S :字符串;

开始

//AnsiChar内存数组-unicode字符串

SetLength(Buf,2);

buf[0]:=65;//A的Ansii码

buf[1]:=66;//B~~

S :=TEncoding .ANSI。getString(Buf);//AnsiChar内存数组-unicode字符串

显示消息;

//UnicodeString - AnsiChar内存数组

SetLength(Buf,0);//这句是测试时使用,实际使用时,不需要先清除

Buf :=TEncoding .Unicode。GetBytes//UnicodeString-AnsiChar内存数组

显示消息(IntToStr(Buf[0]);

结束;所谓聪明的人用帕斯卡尔,德尔菲站在使用者角度可以这么写

使用SysUtils

一、字符串转为翻译

1、直接赋值(有警告)

2、翻译()类型强制转换。(无警告)

二、翻译转为线

1、直接赋值(有警告)

2、字符串()类型强制转换。(无警告)

三、字符串转为结核病(tuberculosis)字节

1、bytes:=bytesof(字符串)已转为美国国家标准学会编码

2、字节:=widebytesof(str)UNICODE编码

四、翻译转为结核病(tuberculosis)字节

1、bytes:=bytesof(str) ansi编码

2、字节:=widebytesof(字符串(str))UNICODE编码

五、Tbytes转为线

1、str:=stringof(字节)Tbytes为美国国家标准学会编码

2、str:=widestringof(字节)Tbytes为采用双字节对字符进行编码编码

六、PChar转线

用StrPas函数,str pas(PChar): ansi字符串;

当然这内部大部分还是还是如下之类!

结果:=十进制编码.UTF8。GetString(TEncoding .UTF8。GetBytes(SteMP));

这里不得不说说,拉扎勒斯/FPC,UTF8作为默认编码,而且强制几次就好方便很多。

————————————————

部分内容引用

原文链接:https://博客。csdn。net/u 011706768/article/details/119566174】暗夜魔尊」

原文链接:https://博客。csdn。net/zxm 8513/article/details/104728514『zxm 8513』

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/92788.html

(0)

相关推荐

  • bootstrap组件

    技术bootstrap组件 bootstrap组件!DOCTYPEhtml
    htmllang="en"head
    metacharset="UTF-8"
    metahttp-equiv="X-UA-Comp

    礼包 2021年12月7日
  • mysqlhotcopy备份报错该怎么解决

    技术mysqlhotcopy备份报错该怎么解决mysqlhotcopy备份报错该怎么解决,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。问题:

    攻略 2021年12月4日
  • ES6新特性常用的知识点有哪些

    技术ES6新特性常用的知识点有哪些这篇文章主要介绍了ES6新特性常用的知识点有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.关键字Let 关键字

    攻略 2021年11月13日
  • ado如何调用存储过程

    技术ado如何调用存储过程小编给大家分享一下ado如何调用存储过程,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!你可以在安装ADO调用存储过程中。但它的功能没有Oracle或Microsoft那么多。而

    攻略 2021年12月4日
  • http协议无状态中的 "状态" 指的是什么

    技术http协议无状态中的 "状态" 指的是什么这篇文章主要介绍“http协议无状态中的 "状态" 指的是什么”,在日常操作中,相信很多人在http协议无状态中的 "状态" 指的是什么问题上存在疑惑,小编查阅了各式资料,

    攻略 2021年10月22日
  • Java中遍历ConcurrentHashMap的四种方式分别是什么

    技术Java中遍历ConcurrentHashMap的四种方式分别是什么本篇文章给大家分享的是有关Java中遍历ConcurrentHashMap的四种方式分别是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完

    攻略 2021年12月8日