System.SysUtils.TMarshaller 与 System.TMarshal
2015-11-10 10:35
423 查看
转自:http://www.cnblogs.com/del/archive/2013/06/10/3130974.html
TMarshaller(结构) 基于 TMarshal(是有一大堆的 class 方法组成的类) 实现.TMarshaller 可以对缓存区进行自动(自动释放)安全地管理, TMarshal 也有前者没有的重要方法, 譬如: TMarshal.Copy() 方法.
有了它们, 以后关于内存缓冲区, 字符串转码等操作就更方便了.
{测试} procedure TForm1.FormCreate(Sender: TObject); var M: TMarshaller; pw: TPtrWrapper; str: string; bs: TBytes; begin bs := BytesOf('万一的 Delphi 博客'); pw := M.AllocMem(Length(bs)); TMarshal.Copy(bs, 0, pw, Length(bs)); str := TMarshal.ReadStringAsAnsi(pw); ShowMessage(str); pw := M.AsUtf8(str); str := TMarshal.ReadStringAsUtf8(pw, -1); ShowMessage(str); end;
相关文章推荐
- jQuery children等筛选用法
- Picasso占位符
- SQL大圣之路笔记——把数据库中表里的数据导出成Excel(Copy时,会因分隔符问题导致许多数据存放在一个单元格中)
- SUSE Linux下新建Weblogic 10.3非admin服务
- swift 快速奔跑的兔几 本节的内容是:SpriteKit第5讲 形状节点 图像特效节点
- js图片轮播手动切换效果
- 编译型语言和解释型语言的区别
- 持久化配置管理 diamond 使用简介
- CSRF跨站攻击
- git 查看远程分支、本地分支、删除本地分支
- ubuntu server 14安装jetty9
- 【Discuz】X3.2 二次开发随写
- MVC Html.AntiForgeryToken() 防止CSRF攻击
- codeforce 595B-Pasha and Phone(数学)
- down网页
- ios调度EXC_BAD_ACCESS
- MYSQL加锁的测验
- git忽略文件
- 自动生成automapper的configure匹配规则(一)【复杂类型属性解析】
- mac 解决eclipse OutOfMemoryError