Delphi:对TMemoryStream.Memory错误的理解

TMemoryStream 的 Position 变化后, 我曾经认为它的 Memory 属性也会变化; 只怪不看源码, 只想当然!

procedure TForm1.FormCreate(Sender: TObject);
var
  Stream1,Stream2: TMemoryStream;
  pw: TPtrWrapper;
begin
  Stream1 := TStringStream.Create('1234567890');
  Stream2 := TStringStream.Create('ABCDEFGHIJ');

  //想把 Stream1 变成 123DEFG890
  pw := TPtrWrapper.Create(Stream2.Memory);
  pw := TPtrWrapper.Create(pw.ToInteger + 3);

  Stream1.Position := 3;
  Stream1.Write(pw.ToPointer^, 4);

  ShowMessage(TStringStream(Stream1).DataString); //123DEFG890

  Stream1.Free;
  Stream2.Free;
end;

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索memory
, stream
, position
, create
变化
,以便于您获取更多的相关知识。

时间: 2024-11-03 23:08:07

Delphi:对TMemoryStream.Memory错误的理解的相关文章

java outofmemory-java outof memory错误

问题描述 java outof memory错误 跑android测试程序总是报java outofmemory错误,求解答 解决方案 贴代码出来看看,一般都是图片的问题

【hadoop】 running beyond virtual memory错误原因及解决办法

本文转载自 http://www.cnblogs.com/scw2901/p/4331682.html 在hbase shell 里 运行 count 'tablename' 统计表格行数太慢了 改用 $HBASE_HOME/bin/hbase   org.apache.hadoop.hbase.mapreduce.RowCounter 'tablename' 就报Container [pid=13875,containerID=container_1480991516670_0003_01_0

大多数营销人都错误地理解了APP营销

摘要: 移动应用的爆炸式增长,使数字营销达到了前所未有的高度,在移动互联网时代,拥有一款APP成为接触和拉拢消费者的有效途径.尼尔森的一份报告显示,APP已经占据了智能手机用户使 移动应用的爆炸式增长,使数字营销达到了前所未有的高度,在移动互联网时代,拥有一款APP成为接触和拉拢消费者的有效途径.尼尔森的一份报告显示,APP已经占据了智能手机用户使用手机时间的86%,如此巨大机会,营销人自然不会放过.目前,47%的营销机构和企业已经拥有了自己的APP,65%的营销人正在打算开发APP,APP营销

解决Apache PHP Fatal error: Out of memory错误

观察apache的error.log日志文件,发现如下的错误提示信息: [Fri Aug 26 11:03:03 2011] [error] [client 61.150.43.100] PHP Fatal error:&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; Out of memory (allocated 786432) (tried to allocate 24576 bytes) in E:\\de

关于EINTR错误的理解【转】

转自:http://www.xuebuyuan.com/1470645.html 最近在工作中遇到了EINTR错误,感到比较困惑,几番研究之后,颇有心得和收获,特记录如下,便于以后查询,也给有同样困惑的朋友们提供一点借鉴.         我们经常在网络编程中会看到这样,当执行一个可能会阻塞的系统调用后,在返回的时候需要检查下错误码(if errno == EINTR),如果是这样的错误,那我们一般会重新执行该系统调用.所以经常的写法是: repeat: if(read(fd, buff, si

做图片旋转时出现Out of memory错误

问题描述 当我使用rotatetransform对图片进行旋转时,就会报Outofmemory错误,内存不足,如果不用rotatetransform就可以,或才能是图片小一些也可以.图片大小也就20M,我就不明白了,这图片也不算大啊,我的电脑有4G内存,为什么就报内存不足了Bitmapb=newBitmap(@"Z:新建文件夹HPG-20140711-A.jpg");Bitmapb2=newBitmap(b.Width,b.Height,b.PixelFormat);//在此处在任务管

Git使用小坑 Out of memory错误的解决方法_服务器其它

最近公司将内部使用的代码由svn迁到了git上,所以也必须学者使用Git命令. 虽说git的模式和svn区别很大,但想必也不是什么难事.但没曾想在第一步git clone的时候就踩到了一个大坑--废话不多提,先看错误代码: 复制代码 代码如下: Cloning into XXXX... remote: Couting objects: 125627, done. remote: Compressing objects: 100% (47061/47061), done. fatal: Out o

暂时解决weblogic 的 permGen out of memory错误

项目大了以后开发环境频繁deploy会导致weblogic报permGen 错误,查了一下,暂时解决的办法是: 在weblogic/common/bin/commEnv.sh中配置 MEM_ARGS="-Xms32m -Xmx200m -XX:MaxPermSize=128m" -Xms:内存初始值 -Xmx:内存最大值(不要超过内存的80%) MaxPermSize:PermGen(Class和Meta存放区域)区域内存最大值. 可调整为: MEM_ARGS="-Xms51

oracle MOS错误 ORA-27163: out of memory解决方法

数据库版本 oracle -> 11g @xifenfei:/home/oracle$sqlplus / as sysdba   SQL*Plus: Release 11.2.0.4.0 Production on Tue Sep 30 10:28:30 2014   Copyright (c) 1982, 2013, Oracle.  All rights reserved.     Connected to: Oracle Database 11g Enterprise Edition Re