【问题标题】:Ada: Write to File Multiple TimesAda:多次写入文件
【发布时间】:2017-02-19 00:58:51
【问题描述】:

在 Ada 中,您可以打开、写入、关闭,然后重新打开、写入和关闭一个 txt 文件而不被覆盖吗?就像从上次停止的地方继续? 谢谢!

【问题讨论】:

  • 是“附加”您要查找的单词吗?您可以在 open 调用中为 mode 参数提供“append_file”模式...
  • 完全是@BrianDrummond
  • 甜蜜!现在的问题是,每次我再次写入文件时,它都会转到下一行。无论如何要防止这种情况? @BrianDrummond

标签: file output ada


【解决方案1】:

是的。如果您查看参考手册中的 A.10.1 部分,您可以看到包 Ada.Text_IO 包含声明:

type File_Mode is (In_File, Out_File, Append_File);

Append_File 是您要查找的模式。

参考手册中的 A.10.2(3) 要求您在关闭文件时换行:

对于过程Close:如果文件的当前模式为Out_FileAppend_File,则具有调用New_Page的效果,除非当前页面已经终止;然后输出一个文件终止符。

...其中 A.10.5(16) 解释了 New_Page 的作用:

对模式为Out_FileAppend_File 的文件进行操作。如果当前行未终止,或者当前页为空(即当前列号和行号都等于 1),则输出行终止符。然后输出一个页面终止符,它终止当前页面。将当前页码加一并将当前列号和行号设置为一。

如果您想更详细地控制文件中的内容,您应该使用其他 I/O 包之一。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-14
    • 1970-01-01
    • 2020-05-24
    • 2011-09-22
    • 1970-01-01
    • 1970-01-01
    • 2013-03-08
    相关资源
    最近更新 更多