C++ Builder 中相关流对象的讨论.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CBuilder中相关流对象的讨论

C++ Builder 中相关流对象的讨论【作者未知,编辑整理】概述在C++ Builder中,存在以下几种流对象:TFileStreamTMemoryStreamTStringStreamTWinSocketStreamTBlobStreamTOleStreamTClientBlobStreamTResourceStream下面是以上各类的继承关系:TObject|TStream|+---------------------------+---------------------------+--------------------+-------------------+-------------+|     |    |   |    |     |THandleStream TCustomMemoryStream TWinsocketStream TBlobStream TOleStream  TStringStream|     |TFileStream  TMemoryStream|+-------------------------------+|    |TClientBlobStream   TResourceStream第二章 流对象的属性及方法简介关于各属性和方法的详细语法请见C++ BUILDER的帮助一. TStream介绍属性Position:当前位置指针Size:流的大小,单位为字节方法CopyFrom:从一个流往另一个流拷贝数据Read:从流中读取一定字节的数据到缓冲区,返回读取的字节数ReadBuffer:从流中读取一定字节的数据到缓冲区,如不正确则异常ReadComponent:从流中取出一个组件ReadComponentRes:以Windows的资源文件格式从流中读取一组件Seek:定位流的当前位置指针SetSize:设置流的大小。Write:从缓冲区中将一定字节的数据写入到流中,返回写入的字节数WriteBuffer:从缓冲区中将一定字节的数据写入到流中,失败则异常WriteComponent:将一组件写入到流中WriteComponentRes:将一组件以Windows资源文件的格式写入到流中注意:不能直接建立一个TStream类型的流对象二. THandleStream介绍属性Handle:流对象要读写的通迅资源的句柄Size:句柄所标识的资源的大小,单位为字节方法Read:从流中读数据到缓冲区中Seek:设置流的当前位置SetSize:设置流的大小,不成功则返回一个异常THandleStream:通过一个打开的句柄建立一个句柄流对象Write:将数据从缓冲区中写入到流可以使用THandleStream流对象来存取如文件、套接字、命名管道、邮槽等打开了句柄的通迅资源。下面是一个使用句柄流对象进行文件操作的片段代码://////////////////////////////////////////////////////////////////////////////////////////////////将c:\config.sys文件中的内容读入到一个文本框中int?fileHandle;THandleStream?*fileStream;fileHandle?=?FileOpen(“c:\\config.sys”,fmOpenRead);if(fileHandle?==?-1) return?; //打开文件出错fileStream?=?new?THandleStream(fileHandle);char?buffer[10001];unsigned?long?bufferSize;do{ ?bufferSize?=?fileStream-Read(buffer,?10000); ?if?(bufferSize??0?) ?{ ?buffer[bufferSize]?=?0; ?Memo1-Text?+=?buffer; ?}}while(?bufferSize?==?10000?);delete?fileStream;FileClose(fileHandle);?//请注意一定要先注销流对象才能关闭句柄三. TCustomMemoryStream介绍属性Memory:指向内存流对象的实际内存的指针,可用该指针直接访问内存流的内存方法Read:从流中读数据到缓冲区中SaveToFile:将内存流中的数据保存到文件中SaveToStream:将内存流中的数据保存到其它流对象中Seek:设置流对象的当前位置SetPointer:设置与内存流对象相关联的内存池注意:该类为纯虚类,不能直接建立其对象。应使用TMemoryStream或是TResourceStream。四. TWi

文档评论(0)

wuyuetian + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档