zoukankan      html  css  js  c++  java
  • Delphi流的操作_文件合并

    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;
    
    type
      TForm1 = class(TForm)
        btn1: TButton;
        btn2: TButton;
        btn3: TButton;
        mmo1: TMemo;
        mmo2: TMemo;
        procedure btn1Click(Sender: TObject);
        procedure btn2Click(Sender: TObject);
        procedure btn3Click(Sender: TObject);
        procedure FormCreate(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    //合并  use TFileStream
    procedure TForm1.btn1Click(Sender: TObject);
    var
      fs1,fs2:TFileStream;
    begin
      fs1:= TFileStream.Create('a.txt',fmOpenWrite); //
      fs2:= TFileStream.Create('b.txt',fmOpenRead); //必须为fmOpenRead,如果为fmOpenWrite则报错
      try
        fs1.Seek(0,soFromEnd);//将指针移到主文件的末尾
        fs1.CopyFrom(fs2,0);
      finally
        fs1.Free;
        fs2.free;
      end;
    
      mmo1.Lines.LoadFromFile('a.txt');
      mmo2.Lines.LoadFromFile('b.txt');
    end;
    
    //合并 use TMemoryStream
    procedure TForm1.btn3Click(Sender: TObject);
    var
      fs1:TFileStream;
      ms: TMemoryStream;
    begin
      fs1:= TFileStream.Create('a.txt',fmOpenWrite); //
      ms:= TMemoryStream.Create;
      try
        ms.LoadFromFile('b.txt');
        fs1.Seek(0,soFromEnd);//将指针移到主文件的末尾
        fs1.CopyFrom(ms,0);
      finally
        fs1.Free;
        ms.free;
      end;
    
      mmo1.Lines.LoadFromFile('a.txt');
      mmo2.Lines.LoadFromFile('b.txt');
    end;
    
    //分割
    procedure TForm1.btn2Click(Sender: TObject);
    var
      fs1,fs2:TFileStream;
      isize:integer;
      ms:TMemoryStream;
    begin
      fs1:= TFileStream.Create('a.txt',fmOpenRead); //
      fs2:= TFileStream.Create('b.txt',fmOpenRead); //必须为fmOpenRead,如果为fmOpenWrite则报错
      ms:= TMemoryStream.Create;
      try
        isize:= fs2.Size;
        //isize:=18;//18为 文件字节数
        fs1.Seek(-18,soFromEnd);//
        ms.CopyFrom(fs1,18);
        ms.SaveToFile('c.txt');
      finally
        fs1.Free;
        ms.free;
      end;
    end;
    
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      mmo1.Lines.LoadFromFile('a.txt');
      mmo2.Lines.LoadFromFile('b.txt');
    end;
    
    end.

    书搞进脑袋 创新 创造; 积极
  • 相关阅读:
    struts2 标签的使用之二 s:iterator
    struts2 标签的使用之一 s:if
    java Tomcat数据库连接池
    JNDI:对java:comp/env的研究
    ***Tomcat7.0安装配置
    ***tomcat配置文件server.xml详解
    宜昌IT软件资源汇总
    tomcat安全设置
    tomcat部署javaweb项目的三种方式
    Tomcat在Linux上的安装与配置
  • 原文地址:https://www.cnblogs.com/tobetterlife/p/12169758.html
Copyright © 2011-2022 走看看