我有一个程序,用户注册我的程序,并为他们创建一个文本文件。我试过使用文件夹文件功能,但不确定参数。当每个用户使用这个函数或任何其他函数注册时,我如何为他们创建一个文本文件?
7eumitmz1#
也许你可以创建一个字符串列表并保存到文件中:
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;
gjmwrych2#
有几种方法可以将两行写入文本文件:使用TFile:
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:
TStringList
const fn := 'out.txt'; var sl := TStringList.Create; try sl.Add('Line1'); sl.Add('Line2'); sl.SaveToFile(fn); finally sl.Free; end;
ltskdhd13#
最短的答案:
FileCreate('filename.txt');
FileCreate在System.SysUtils中声明,实际上是一个返回THandle的函数。(如果调用时没有赋值,返回值就会被丢弃。)我只是为了简洁而展示了上面的代码;大多数情况下,忽略返回值并不是一个好的编程实践。特别是在这种情况下,你肯定会需要它进一步。如果调用不成功,则返回值为INVALID_HANDLE_VALUE,否则它将保存新创建文件的文件句柄。即使你不需要马上使用这个文件,你也需要这个句柄:文件将不可访问,直到通过调用FileClose函数释放句柄。所以,最短的正确答案是
FileCreate
System.SysUtils
THandle
INVALID_HANDLE_VALUE
FileClose
FileClose(FileCreate('filename.txt');
jm81lzqq4#
另一种更简单的创建文件的方法(对于那些像我一样多年后才发现这个页面的人来说)是简单地使用AssignFile('FileName.TXT')。它会创建一个新的文件,您可以上传文本。示例(我的Gr 10高中 Delphi 实践):
begin AssignFile(TFReceipt,'Receipt.TXT'); redtEReceiptBod.Lines.SaveToFile('Receipt.TXT'); Showmessage('Receipt generated'); end;
它获取任何字符串的内容并将其放置在文件中。要使文件可读(删除分页标记,如/par),您可以将RichEdit(或任何其他字符串容器)的属性更改为RichEdit.plaintext:=true;这将删除所有不必要的分页内容。
4条答案
按热度按时间7eumitmz1#
也许你可以创建一个字符串列表并保存到文件中:
gjmwrych2#
有几种方法可以将两行写入文本文件:
使用
TFile
:使用
TStringList
:ltskdhd13#
最短的答案:
FileCreate
在System.SysUtils
中声明,实际上是一个返回THandle
的函数。(如果调用时没有赋值,返回值就会被丢弃。)我只是为了简洁而展示了上面的代码;大多数情况下,忽略返回值并不是一个好的编程实践。特别是在这种情况下,你肯定会需要它进一步。如果调用不成功,则返回值为
INVALID_HANDLE_VALUE
,否则它将保存新创建文件的文件句柄。即使你不需要马上使用这个文件,你也需要这个句柄:文件将不可访问,直到通过调用FileClose
函数释放句柄。所以,最短的正确答案是jm81lzqq4#
另一种更简单的创建文件的方法(对于那些像我一样多年后才发现这个页面的人来说)是简单地使用AssignFile('FileName.TXT')。它会创建一个新的文件,您可以上传文本。
示例(我的Gr 10高中 Delphi 实践):
它获取任何字符串的内容并将其放置在文件中。要使文件可读(删除分页标记,如/par),您可以将RichEdit(或任何其他字符串容器)的属性更改为RichEdit.plaintext:=true;这将删除所有不必要的分页内容。