程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> Delphi中把Integer數組保存到文件並讀取

Delphi中把Integer數組保存到文件並讀取

編輯:Delphi

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

type
  TIntArray = array of Integer;

{把 Integer 數組寫入文件的函數}
function IntArrToFile(ns: TIntArray; FileName: string): Boolean;
var
  IntFile: file of Integer;
  n: Integer;
begin
  try
    AssignFile(IntFile, FileName);
    if FileExists(FileName) then Reset(IntFile) else Rewrite(IntFile);
    Seek(IntFile, FileSize(IntFile));
    for n in ns do Write(IntFile, n);
    Result := True;
  finally
    CloseFile(IntFile);
  end;
end;

{讀取的函數}
function FileToIntArr(FileName: string; var ns: TIntArray): Integer;
var
  IntFile: file of Integer;
begin
  if not FileExists(FileName) then Exit(0);
  AssignFile(IntFile, FileName);
  Reset(IntFile);

  while not Eof(IntFile) do
  begin
    SetLength(ns, Length(ns)+1);
    Read(IntFile, ns[High(ns)]);
  end;

  CloseFile(IntFile);
  Result := Length(ns);
end;

{寫入測試}
procedure TForm1.Button1Click(Sender: TObject);
var
  IntArr: TIntArray;
begin
  SetLength(IntArr, 3);
  IntArr[0] := 111;
  IntArr[1] := 222;
  IntArr[2] := 333;

  IntArrToFile(IntArr, 'c:\temp\test.num');
end;

{讀取測試}
procedure TForm1.Button2Click(Sender: TObject);
var
  IntArr: TIntArray;
  n: Integer;
begin
  FileToIntArr('c:\temp\test.num', IntArr);
  for n in IntArr do ShowMessage(IntToStr(n));
end;

end.

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved