简单(20)

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

Unregistered / Unconfirmed
GUEST, unregistred user!
C盘TXT目录下有1000个文件我想把这1000个文件装入一个字符串数组filenamestring: Array [0..1000] of string;应该怎么写
 
如果这1000个文件都比较小(40~50K)的话,还可以,100K以上的1000个文件,装入字符数组就是100M的内存。 你要想清楚在干这样的事。但是看你的说明:我想把这1000个文件装入一个字符串数组filenamestring: Array [0..1000] of string;你是要装入文件名,而不是文件的内容吧?提个思路。//只获取文件名function GetFileNames(const StrPath: string; var filenamestring: array of string): TStringList;var SR: TSearchRec; index: Integer;begin index := 0; Result := TStringList.Create; if FindFirst(StrPath + '/*.txt', faAnyFile, SR) = 0 then begin repeat filenamestring[index] := sr.Name; Result.Add(SR.Name); inc(index); Application.Terminate; until FindNext(sr) <> 0; FindClose(sr); end;end;//获取文件内容function GetFiles(const StrPath: string; var filenamestring: array of string): TStringList;var SR: TSearchRec; index: Integer; StrList: TStringList;begin index := 0; Result := TStringList.Create; StrList := TStringList.Create; if FindFirst(StrPath + '/*.txt', faAnyFile, SR) = 0 then begin repeat StrList.LoadFromFile(StrPath + '/' + sr.Name); filenamestring[index] := StrList.Text; Result.Add(StrList.Text); inc(index); Application.Terminate; until FindNext(sr) <> 0; FindClose(sr); end;end;建议使用TStringList 不要自定义数组,如果是未知的文件数量,还得事先统计.如果你确实要获取1000个文件的内容,本人替你担忧中...试想你让记事本同时打开1000个文本文件是什么效果.
 
多人接受答案了。
 
后退
顶部