zoukankan      html  css  js  c++  java
  • 关于 Delphi 中流的使用(6) 用流读写结构化文件

    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;
    
    type
      TForm1 = class(TForm)
        Memo1: TMemo;     {添加 Memo 显示内容}
        Button1: TButton;
        Button2: TButton;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    type
      TRec = record     {定义一个记录}
        name: string[8];
        age: Word;
      end;
    
    
    //写入
    procedure TForm1.Button1Click(Sender: TObject);
    var
      rec: TRec;
      ms: TMemoryStream;
    begin
      ms := TMemoryStream.Create;
    
      rec.name := '张三'; rec.age := 8;
      ms.Write(rec, SizeOf(rec));
    
      rec.name := '李四'; rec.age := 81;
      ms.Write(rec, SizeOf(rec));
    
      rec.name := '王二麻子'; rec.age := 18;
      ms.Write(rec, SizeOf(rec));
    
      ms.SaveToFile('c:\temp\rec.dat');
    
      ms.Free;
    end;
    
    
    //读取
    procedure TForm1.Button2Click(Sender: TObject);
    var
      rec: TRec;
      ms: TMemoryStream;
    begin
      ms := TMemoryStream.Create;
      ms.LoadFromFile('c:\temp\rec.dat');
    
      Memo1.Clear;
      ms.Position := 0;
      while ms.Position < ms.Size do
      begin
        ms.Read(rec, SizeOf(rec));
        Memo1.Lines.Add(rec.name + ' ' + IntToStr(rec.age));
      end;
      {Memo1 的显示结果会是:
        张三 8
        李四 81
        王二麻子 18
      }
    
      ms.Free;
    end;
    
    end.
    
  • 相关阅读:
    用变量构造函数检查变量类型
    HTML5的File API读取文件信息
    jQuery插件中的this指的是什么
    了解babel
    了解.gitignore
    高德地图画正六边形
    编写可维护性的js读书笔记
    百度地图遇到的问题
    实用的两个移动端demo
    git基本操作总结
  • 原文地址:https://www.cnblogs.com/del/p/1022488.html
Copyright © 2011-2022 走看看