【发布时间】:2013-05-18 11:38:39
【问题描述】:
FPS 程序是否有可能读取用户输入,然后创建一个具有该输入名称的文件,然后读取另一个输入等等......?
我尝试创建文本文件数组,但遇到了一些问题。
首先发生了一个错误,即(某些)访问被拒绝,其次,如何创建一个变量位于文本文件名中间的结果文件(我试过 assign (Df,'rezult',i ,'.txt'); i - 这里正在改变变量,但是这样程序不起作用。
附:对不起我的英语语言能力......
这是我尝试过的:
program testing;
var
Df : text;
i:integer;
SomeUserInput:integer;
begin
for i:=1 to 10 do
begin
Assign(Df,'rez.txt'); Rewrite(Df);
Read(SomeUserInput);
WriteLn(Df,'some words + ',SomeUserInput);
Close(Df);
end;
Readln;
end.
(修复了第一条评论提示的问题,但现在我的文件中只写了最后一件事,我希望创建10个或更多文件)
【问题讨论】:
-
嗯,我可以看到一个明显的问题。您的循环从 1 到 1000,而您的数组从 1 到 100。因此,从第 101 个元素开始,您很容易受到访问冲突错误的影响。此外,您可以重用变量,因此如果您要在之后立即关闭文件,则不需要数组。你可以继续重复使用同一个:)
标签: arrays file variables text freepascal