文本文件内容存入数组(100分)

  • 主题发起人 主题发起人 zyljj
  • 开始时间 开始时间
Z

zyljj

Unregistered / Unconfirmed
GUEST, unregistred user!
请高手指点:
如何将一个纯文本文件中的内容存到一个字符型数组中,要求是文本文件
的每一行作为一个元素存入数组。(每一行的字符数不超过255)。
 
利用TStringList的LoadFromFile方法可以很容易的实现你的要求.
实际上,你也不一定非要保存到字符串数组中,相比之下TStringList更好用.

unit Unit1;

interface

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

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

const
MAXLINE=2000;
var
Form1: TForm1;
MyArray:Array[0..MAXLINE]of String;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
theStringList:TStringList;
i:Integer;
begin
theStringList:=TStringList.Create();
theStringList.LoadFromFile('C:/Autoexec.bat');
for i:=0 to theStringList.Count-1 do
MyArray:=theStringList.Strings;
theStringList.Free;
end;

end.
 
放一个TMemo到你的Form上,让他不可见. 什么时候想读入文件就用它的LoadFromFile,
想要某行的字符串, 就用它的Lines属性.

系统开销并不比一个TEdit大多少(当然文字缓冲要占用一些), 甚至比静态的字符串
数组还经济.
 
但是,huizhang, TMemo不能处理稍大些的文件,好象 >32k 就不灵了,出奇怪的错。
 
TRichEdit可以吗?
它能够承受几K?
 
delphi Tmemo可以突破64k!它支持长字符串!
 
有控件可以处理极大的字符串(4GB)
 
多人接受答案了。
 
后退
顶部