`
free_bird816
  • 浏览: 206088 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

关于 Delphi 中流的使用(2) 用 TFileStream(文件流) 读写

阅读更多

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的TFileStream类是处理文件流的强大工具,适用于各种文件操作,包括读写、追加和合并。通过熟练掌握其用法,开发者可以高效地实现复杂的数据存储和传输任务。

    Delphi直接读写文本文件

    在Delphi中,可以使用`TFile`和`TFileStream`类来读写文本文件。下面我们将分别介绍这两种方法。 1. **使用TFile** `TFile`类提供了一些静态方法,如`WriteAllText`和`ReadAllText`,它们可以轻松地完成读写文本...

    delphi读取文件流

    本篇文章将详细探讨如何使用TFileStream类来实现Delphi读取文件流,并结合字节数组进行文件复制。 首先,`TFileStream`是Delphi的System.Classes单元中的一个类,它继承自TStream,提供了对磁盘文件的读写操作。在...

    Delphi 利用流分割与合并文件

    常见的流类包括 TMemoryStream(内存流)、TFileStream(文件流)和 TResourceStream(资源流)等。 **1. 文件分割** 文件分割通常涉及到从一个大文件中提取出一部分内容,保存为独立的小文件。在 Delphi 中,我们...

    Delphi 使用tfilestream方式复制文件.rar

    Delphi 使用tfilestream方式复制文件,你可参考本源码,学习一下OpenDialog、Tfilestream.Create、showmessage、CopyFile的用法,本实例复制文件,是通过读取文件流,保存文件流的方式复制,并不是使用命令复制文件...

    delphi 文件读写

    最后,关于文件路径,Delphi支持相对路径和绝对路径。根据项目需求,你可以选择合适的方式指定文件位置。同时,确保文件操作的安全性,例如在读写文件前检查权限,防止数据丢失或损坏。 通过以上内容,你应该对...

    Delphi中文件流的基础使用方法

    总结,Delphi中的文件流提供了强大的文件操作能力,无论是在磁盘上读写文件,还是在内存中处理数据,都可通过TStream及其子类实现。掌握文件流的使用,能极大提升Delphi程序的数据处理效率和灵活性。在实际编程中,...

    Delphi内存流、文件流原理实例及应用.rar

    以下是一个简单的使用内存流和文件流的Delphi代码示例: ```delphi uses Classes; var MemStream: TMemoryStream; FileStream: TFileStream; Buffer: Pointer; Size: Integer; begin // 创建内存流 ...

    delphi 流读写格式化记录文件

    常见的流类有TMemoryStream(内存流)、TFileStream(文件流)和TStringStream(字符串流)等。 当我们谈论“格式化记录文件”时,通常是指包含结构化数据的文件,例如CSV(逗号分隔值)、XML或自定义格式的文件。...

    流与文件读写

    以上就是关于Delphi中流与文件读写的详细介绍。通过理解和运用这些知识,开发者可以更灵活地处理和存储数据,提高程序的效率和可维护性。在实际项目中,如"Project1",可能包含了实现这些功能的源代码,例如"Unit1....

    使用TFileStream读文件

    在Delphi编程环境中,TFileStream是一个非常重要的类,它用于处理磁盘上的文件流,可以进行读取、写入和追加操作。本Demo主要展示了如何利用TFileStream的Read方法来读取文件内容。下面我们将深入探讨TFileStream的...

    delphi读写文件,小例子,用着非常爽

    使用TFileStream的构造函数创建一个文件流对象,参数包括文件名和访问模式(fmOpenRead、fmOpenWrite、fmCreate等)。例如: ```delphi var FileStream: TFileStream; begin FileStream := TFileStream.Create...

    Delphi流文件操作

    Delphi流文件操作 Delphi流文件操作是指在Delphi开发环境中对数据流的各种操作,如写入、读取、合并、分隔等。流是一种抽象的处理数据的工具,定义了一些处理数据的基本操作,如读取数据、写入数据等。程序员只需...

    delphi文件拖动操作以及记录文件读写操作

    在Delphi编程环境中,文件操作是一项基础且重要的任务,其中包括文件拖动操作和记录文件的读写。在本文中,我们将深入探讨这两个知识点,并结合给定的描述来讲解如何实现这些功能。 首先,让我们来看看“文件拖动...

    delphi读写PE文件

    标题 "Delphi读写PE文件" 涉及的核心知识点是使用Delphi编程语言操作PE(Portable Executable)文件。PE文件格式是Windows操作系统中用于存放可执行程序、动态链接库(DLL)和其他类型模块的标准格式。理解并能操作...

    Delphi读写文本文件(通过Memo)和ini文件

    在Delphi中,可以使用TFile和TStream类来读写文件,但这里我们将重点讨论通过TMemo组件的方法。TMemo是一个可视组件,通常用于显示和编辑多行文本。 - **写入文本文件:** 首先,创建一个TMemo组件并将你想要...

    TXT Delphi操作实例:读取、写入、保存等.rar

    在这个实例中,我们可能会看到如何创建一个TFileStream对象,然后用TStreamReader和TStreamWriter来读写文件内容。 读取TXT文件通常涉及打开文件,创建一个流对象,然后逐行读取。例如: ```delphi var FileStream...

    二进制文件操作

    在Delphi中处理二进制文件,我们需要使用I/O流类,如TFileStream。这个类提供了读写文件的基本方法,如Read、Write、Seek等,可以用来操作二进制文件。 1. **TFileStream的使用**: TFileStream是Delphi中的一个...

    Delphi中文件流的基础使用方法四个实例

    在Delphi编程环境中,文件流是处理数据输入输出的关键工具,尤其在进行文件操作时。本文将详细讲解TMemoryStream和TFileStream这两种流类的基本使用方法,并通过四个实例来加深理解。 1. **TMemoryStream入门** ...

    delphi 利用内存流合并文件

    在Delphi编程环境中,利用内存流(Memory Stream)合并文件是一项常见的操作,特别是在处理大量数据或者需要高效读写文件的场景下。内存流允许我们直接在内存中存储和操作数据,而无需频繁地与磁盘交互,从而提高...

Global site tag (gtag.js) - Google Analytics