我将如何在 Delphi 中创建文本文件
How would I create a text file in Delphi
我有一个程序,用户可以在其中注册我的程序并为他们创建一个文本文件。
我试过使用 CreateFile 函数,但不确定参数。当每个用户使用此功能或任何其他功能注册时,我将如何为他们创建一个文本文件?
也许您可以创建一个字符串列表并将其保存到文件中:
procedure MakeAStringlistAndSaveThat;
var
MyText: TStringlist;
begin
MyText:= TStringlist.create;
try
MyText.Add('line 1');
MyText.Add('line 2');
MyText.SaveToFile('c:\folder\filename.txt');
finally
MyText.Free
end; {try}
end;
有几种方法可以将两行写入文本文件:
使用TFile
:
fn := 'out.txt';
// method 1
TFile.WriteAllLines(fn, ['Line1','Line2']);
// method 2
TFile.WriteAllText(fn, 'Line1'+sLineBreak+'Line2');
// method 3
TFile.WriteAllText(fn, 'Line1');
TFile.AppendAllText(fn, sLineBreak);
TFile.AppendAllText(fn, 'Line2');
使用TStringList
:
const fn := 'out.txt';
var sl := TStringList.Create;
try
sl.Add('Line1');
sl.Add('Line2');
sl.SaveToFile(fn);
finally
sl.Free;
end;
可能的最短答案:
FileCreate('filename.txt');
FileCreate
在 System.SysUtils
中声明,实际上是一个函数 returning a THandle
。 (如果您不在调用时分配 return 值,它就会被简单地丢弃。)
我只是展示上面的代码是为了活泼;大多数时候忽略 return 值并不是好的编程习惯。特别是在这种情况下,您肯定会进一步需要它。
如果调用不成功,return值为INVALID_HANDLE_VALUE
,否则保存新建文件的文件句柄。
即使您不需要立即使用该文件,您也需要句柄:在通过调用 FileClose
函数释放句柄之前,将无法访问该文件。所以,正确的最短答案变成
FileClose(FileCreate('filename.txt');
我有一个程序,用户可以在其中注册我的程序并为他们创建一个文本文件。 我试过使用 CreateFile 函数,但不确定参数。当每个用户使用此功能或任何其他功能注册时,我将如何为他们创建一个文本文件?
也许您可以创建一个字符串列表并将其保存到文件中:
procedure MakeAStringlistAndSaveThat;
var
MyText: TStringlist;
begin
MyText:= TStringlist.create;
try
MyText.Add('line 1');
MyText.Add('line 2');
MyText.SaveToFile('c:\folder\filename.txt');
finally
MyText.Free
end; {try}
end;
有几种方法可以将两行写入文本文件:
使用TFile
:
fn := 'out.txt';
// method 1
TFile.WriteAllLines(fn, ['Line1','Line2']);
// method 2
TFile.WriteAllText(fn, 'Line1'+sLineBreak+'Line2');
// method 3
TFile.WriteAllText(fn, 'Line1');
TFile.AppendAllText(fn, sLineBreak);
TFile.AppendAllText(fn, 'Line2');
使用TStringList
:
const fn := 'out.txt';
var sl := TStringList.Create;
try
sl.Add('Line1');
sl.Add('Line2');
sl.SaveToFile(fn);
finally
sl.Free;
end;
可能的最短答案:
FileCreate('filename.txt');
FileCreate
在 System.SysUtils
中声明,实际上是一个函数 returning a THandle
。 (如果您不在调用时分配 return 值,它就会被简单地丢弃。)
我只是展示上面的代码是为了活泼;大多数时候忽略 return 值并不是好的编程习惯。特别是在这种情况下,您肯定会进一步需要它。
如果调用不成功,return值为INVALID_HANDLE_VALUE
,否则保存新建文件的文件句柄。
即使您不需要立即使用该文件,您也需要句柄:在通过调用 FileClose
函数释放句柄之前,将无法访问该文件。所以,正确的最短答案变成
FileClose(FileCreate('filename.txt');