【问题标题】:How to append to a file using Scheme?如何使用 Scheme 附加到文件?
【发布时间】:2010-10-07 09:15:49
【问题描述】:

我正在使用 TinyScheme(实际上是 GIMP 中的 Script-Fu),但找不到打开文件并向其附加一行文本的好方法。

我正在尝试将一些信息记录到文件中以进行调试,并且似乎没有实现转录功能...

现在我正在阅读整个文件(一次一个字符!),将其连接成一个字符串,将我的文本连接到它的末尾,然后将其全部写入文件。

p>

一定有更好的办法!

【问题讨论】:

    标签: scheme append gimp script-fu


    【解决方案1】:

    会是这样的

    (open-file "myfile" (file-options append))
    

    您要查找file-options 函数。

    更新

    这是guile version

    (open-file "myfilename.dat" "a")
    

    【讨论】:

    • hmm... 这至少让我了解了文档的正确部分(:GIMP 无法识别文件选项,唉...
    • 尝试打开文件标志。不幸的是,很难公理化这些东西,所以 Scheme 根本没有指定它。
    【解决方案2】:

    刚刚在 GIMP 中遇到了同样的问题并决定使用open-input-output-file。我的解决方案是这样的:

    (let* ((out (open-input-output-file "file.txt") ))
      (display "hello world" out)
      (newline out)                    
      (close-output-port out))
    

    查看 TinyScheme 源代码并检查此函数是否实际调用 fopen"a+"。该文件已打开以供读取和写入。为了我们的目的,我们只想写,所以忽略阅读。

    我正在编写一个 Script-Fu 来将 gimp-selection-bounds 的值写入文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-10-24
      • 2019-07-04
      • 1970-01-01
      • 2015-08-04
      • 1970-01-01
      • 2017-06-26
      • 1970-01-01
      • 2015-11-03
      相关资源
      最近更新 更多