TStream 是一个抽象的基类, 不能直接生成对象. 在具体的应用中, 主要使用它的子孙类:
TFileStream: 文件流
TStringStream: 字符串流
TMemoryStream: 内存流
TResourceStream: 资源文件流
THandleStream: 是 TFileStream 的父类、TStream 的子类
TCustomMemoryStream: 是 TMemoryStream 和 TResourceStream 的父类、TStream 的子类
与流相关的常用类还有: TReader、TWriter、TCompressionStream、TDecompressionStream
来一个文件流的例子:
procedure TForm1.Button1Click(Sender: TObject);
var
getStream,setStream: TFileStream; {声明一个文件流}
getPath,setPath: string;
begin
getPath := 'c:\temp\get.jpg'; {需要这个文件存在}
setPath := 'c:\temp\set.jpg'; {这个会自动建立}
if not FileExists(getPath) then
begin
ShowMessage('找不到我们要测试的图片文件: ' + getPath);
Exit;
end;
getStream := TFileStream.Create(getPath, fmOpenRead or fmShareExclusive);
setStream := TFileStream.Create(setPath, fmCreate);
{建立文件流需要两个参数: 参数 1 是路径, 参数 2 是打开模式}
getStream.Position := 0; {流指针移到开始, 复制时从这里开始}
setStream.CopyFrom(getStream, getStream.Size); {Copy 流}
{CopyFrom 的参数 2 是要复制的内容大小; 如果为 0 , 不管指针在什么位置都会复制所有内容}
{CopyFrom 返回实际拷贝的字节数}
{这时硬盘上就有 set.jpg 文件, 与 get.jpg 一么一样}
{其实就是复制文件, 不过这里我们是用文件流实现的}
getStream.Free;
setStream.Free;
end;
TFileStream 打开模式与共享模式:
分类
参数
说明
打
开
模
式
fmCreate |
建立文件, 如果存在则打开它。 |
fmOpenRead |
只读打开 |
fmOpenWrite |
只写打开 |
fmOpenReadWrite |
读写打开 |
共
享
模
式
fmShareCompat |
共享模式, 兼容 Dos |
fmShareExclusive |
不允许别人以任何方式打开 |
fmShareDenyWrite |
允许别人以只写方式打开 |
fmShareDenyRead |
允许别人以只读方式打开 |
fmShareDenyNone |
允许别人以任何方式打开 |
分享到:
相关推荐
在Delphi编程环境中,TFileStream是一个非常...总之,Delphi的TFileStream类是处理文件流的强大工具,适用于各种文件操作,包括读写、追加和合并。通过熟练掌握其用法,开发者可以高效地实现复杂的数据存储和传输任务。
在Delphi中,可以使用`TFile`和`TFileStream`类来读写文本文件。下面我们将分别介绍这两种方法。 1. **使用TFile** `TFile`类提供了一些静态方法,如`WriteAllText`和`ReadAllText`,它们可以轻松地完成读写文本...
本篇文章将详细探讨如何使用TFileStream类来实现Delphi读取文件流,并结合字节数组进行文件复制。 首先,`TFileStream`是Delphi的System.Classes单元中的一个类,它继承自TStream,提供了对磁盘文件的读写操作。在...
常见的流类包括 TMemoryStream(内存流)、TFileStream(文件流)和 TResourceStream(资源流)等。 **1. 文件分割** 文件分割通常涉及到从一个大文件中提取出一部分内容,保存为独立的小文件。在 Delphi 中,我们...
Delphi 使用tfilestream方式复制文件,你可参考本源码,学习一下OpenDialog、Tfilestream.Create、showmessage、CopyFile的用法,本实例复制文件,是通过读取文件流,保存文件流的方式复制,并不是使用命令复制文件...
最后,关于文件路径,Delphi支持相对路径和绝对路径。根据项目需求,你可以选择合适的方式指定文件位置。同时,确保文件操作的安全性,例如在读写文件前检查权限,防止数据丢失或损坏。 通过以上内容,你应该对...
总结,Delphi中的文件流提供了强大的文件操作能力,无论是在磁盘上读写文件,还是在内存中处理数据,都可通过TStream及其子类实现。掌握文件流的使用,能极大提升Delphi程序的数据处理效率和灵活性。在实际编程中,...
以下是一个简单的使用内存流和文件流的Delphi代码示例: ```delphi uses Classes; var MemStream: TMemoryStream; FileStream: TFileStream; Buffer: Pointer; Size: Integer; begin // 创建内存流 ...
常见的流类有TMemoryStream(内存流)、TFileStream(文件流)和TStringStream(字符串流)等。 当我们谈论“格式化记录文件”时,通常是指包含结构化数据的文件,例如CSV(逗号分隔值)、XML或自定义格式的文件。...
以上就是关于Delphi中流与文件读写的详细介绍。通过理解和运用这些知识,开发者可以更灵活地处理和存储数据,提高程序的效率和可维护性。在实际项目中,如"Project1",可能包含了实现这些功能的源代码,例如"Unit1....
在Delphi编程环境中,TFileStream是一个非常重要的类,它用于处理磁盘上的文件流,可以进行读取、写入和追加操作。本Demo主要展示了如何利用TFileStream的Read方法来读取文件内容。下面我们将深入探讨TFileStream的...
使用TFileStream的构造函数创建一个文件流对象,参数包括文件名和访问模式(fmOpenRead、fmOpenWrite、fmCreate等)。例如: ```delphi var FileStream: TFileStream; begin FileStream := TFileStream.Create...
Delphi流文件操作 Delphi流文件操作是指在Delphi开发环境中对数据流的各种操作,如写入、读取、合并、分隔等。流是一种抽象的处理数据的工具,定义了一些处理数据的基本操作,如读取数据、写入数据等。程序员只需...
在Delphi编程环境中,文件操作是一项基础且重要的任务,其中包括文件拖动操作和记录文件的读写。在本文中,我们将深入探讨这两个知识点,并结合给定的描述来讲解如何实现这些功能。 首先,让我们来看看“文件拖动...
标题 "Delphi读写PE文件" 涉及的核心知识点是使用Delphi编程语言操作PE(Portable Executable)文件。PE文件格式是Windows操作系统中用于存放可执行程序、动态链接库(DLL)和其他类型模块的标准格式。理解并能操作...
在Delphi中,可以使用TFile和TStream类来读写文件,但这里我们将重点讨论通过TMemo组件的方法。TMemo是一个可视组件,通常用于显示和编辑多行文本。 - **写入文本文件:** 首先,创建一个TMemo组件并将你想要...
在这个实例中,我们可能会看到如何创建一个TFileStream对象,然后用TStreamReader和TStreamWriter来读写文件内容。 读取TXT文件通常涉及打开文件,创建一个流对象,然后逐行读取。例如: ```delphi var FileStream...
在Delphi中处理二进制文件,我们需要使用I/O流类,如TFileStream。这个类提供了读写文件的基本方法,如Read、Write、Seek等,可以用来操作二进制文件。 1. **TFileStream的使用**: TFileStream是Delphi中的一个...
在Delphi编程环境中,文件流是处理数据输入输出的关键工具,尤其在进行文件操作时。本文将详细讲解TMemoryStream和TFileStream这两种流类的基本使用方法,并通过四个实例来加深理解。 1. **TMemoryStream入门** ...
在Delphi编程环境中,利用内存流(Memory Stream)合并文件是一项常见的操作,特别是在处理大量数据或者需要高效读写文件的场景下。内存流允许我们直接在内存中存储和操作数据,而无需频繁地与磁盘交互,从而提高...