【问题标题】:Saving text file from code从代码中保存文本文件
【发布时间】:2016-02-13 22:55:09
【问题描述】:

我已经制作了这段代码:

Program Pzim ;
   var
     i:integer;
     vect:array[1..1001] of integer;
Begin
     i:=1;
     for i:= 1 to 999 do
     vect[i]:=i+1;
     for i:= 1 to 999 do
     writeln (vect[i]);
   readln;
End.

程序打印一个数字序列。 我想将打印的内容保存在文本文件中。

它可以使用 Pascal 甚至使用其他来源制作吗?记事本++可能吗?

【问题讨论】:

  • 我无法告诉你为什么它不起作用,因为我看不到你尝试了什么。请参阅下面的答案。
  • 为了您自己,最好缩进您的代码。这是一小段代码,@Joás,但是当代码增长时,缩进是必须做的。最好现在就养成这个习惯。
  • 感谢@EddeAlmeida 的反馈。我要保存它。

标签: file text notepad++ pascal


【解决方案1】:

当然你可以用 Pascal 写入一个文本文件。

Program Pascal ;

var
  i:integer;
  vect:array[1..1001] of integer;
  Myfile: text;

begin
  i:=1;
  for i:= 1 to 999 do
    vect[i]:=i+1;

  Assign(Myfile, 'Myfile.txt');
  Rewrite(MyFile);

  for i:= 1 to 999 do
  begin
    WriteLn (vect[i]);
    WriteLn(Myfile, vect[i]);
  end;
  Close(Myfile);
  ReadLn;
end.

【讨论】:

  • 它说:“找不到那种TextFile语句”它应该是什么?
  • 嘿,我搞定了!谢谢。您能否将答案中的 var“textfile”更改为“text”。也许是因为pascal的版本。
  • 看起来你已经这样做了。 :-) TextFile 可能是 Borland Pascal(甚至是 Delphi)的东西。自 1980 年代以来,我没有使用过标准 Pascal。
【解决方案2】:

这可能取决于您使用的 Pascal 版本,但在许多版本中都可以使用。

var 部分,添加

f : textfile;  // f can be any variable name

vect[i]:=i+1 行之后,插入

assign( f, 'c:\path\filename.txt'; // where path and filename are what you want.

rewrite( f);

然后将写入语句更改为writeln( f, ...),其中f 是上面使用的名称。在结束语句之前,插入closefile( f);(或在某些版本中为close(f))。

【讨论】:

  • 我做了你所说的@Jud Mc Cranie,但现在它说:“链条必须在程序结束之前关闭。”
猜你喜欢
  • 1970-01-01
  • 2016-05-08
  • 2012-07-02
  • 1970-01-01
  • 1970-01-01
  • 2018-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多