我需要帮助为文本文件添加数字。文件夹中的txt文件应如下所示:
Ref1.txt
Ref2.txt
Ref3.txt
...
这是我的代码:
var
RefNumber : Integer;
newFile : TextFile;
RefA, RefB, RefC : String;
begin
RefA := edtRefA.text;
RefB := edtRefB.text;
RefC := edtRefC.Text;
RefNumber := 1;
inc(RefNumber);
System.AssignFile(newFile + RefNumber, 'C:\Users\Files\newFile.txt');
System.Rewrite(newFile + refNumber);
WriteLn(newFile, RefA + RefB + RefC);
System.CloseFile(newFile + RefNumber);
end;
我知道System.AssignFile(NewFile + Refnumber, '');
不正确。
如果有可能,我将如何实现这一目标?
由于
答案 0 :(得分:4)
您应该更改文本文件名字符串而不是文件变量:
System.AssignFile(newFile, 'C:\Users\Files\Ref'+IntToStr(refNumber)+'.txt');
System.Rewrite(newFile);
WriteLn(newFile, RefA + RefB + RefC);
System.CloseFile(newFile);
答案 1 :(得分:1)
您会混淆文件句柄及其关联的文件名。
Var
lFilename : String;
lRefNumber : Integer;
lTextFile : TextFile;
Begin
lRefNumber := 1;
lFileName := Format('Ref%d.Txt',[lRefNumber]);
System.AssignFile(lTextFile, lFileName);
System.Rewrite(lTextFile);
WriteLn(NewFile, RefA + RefB + RefC);
System.CloseFile(lTextFile);
End;
请注意,使用旧的Textfile文件处理方式已被TFileStream及其后代取代。