2017-04-11 29 views
0
(call-with-output-file "b.txt" 
(lambda (output-port) 
(display "hello, world" output-port))) 

追加モードでb.txtを開く方法。その結果、私の結果はテキストファイルに追加されます。私は以下の答えを見つけました。しかし、それは私が期待するものではありません。追加モードでファイルに書き込む方法-scheme R5RS?

Append in scheme

私は、「コールと出力ファイル」で仕事をしたいです。私はこれが適切に機能していることを発見してからこのcall-with-output-fileでは、どうすれば追加できますか?

答えて

1

あなたが言及しているリンクは、正しい解決策を提示します。 guileでは、call-with-output-fileには#:existsというキーワードがないため、ÓscarLópezの提案は機能しません。しかし、これは動作するはずです:

(let ((output-port (open-file "my.txt" "a"))) 
    (display "hello, world" output-port) 
    (newline output-port) 
    (close output-port)) 

あなたはice-9/boot-9call-with-output-fileのコードを見つけることができます。追加をサポートするためにそれを拡張するのは簡単でしょう。

関連する問題