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

추가 모드에서 b.txt를 여는 방법. 그러면 결과가 텍스트 파일에 추가됩니다. 나는 다음과 같은 대답을 발견했다. 그러나 그것은 내가 기대하는 것이 아닙니다.추가 모드에서 파일에 쓰는 방법 -scheme R5RS?

Append in scheme

나는 "통화와 출력 파일"작업 할. 나는 이것이 올바르게 작동하는 것을 발견했기 때문에. 이 출력 파일과 함께 어떻게 추가 할 수 있습니까?

답변

1

언급 한 링크가 올바른 해결책을 제시합니다. guile에는 call-with-output-file#:exists 키워드가 없으므로 Óscar Lopez의 제안이 작동하지 않습니다. 그러나이 작동합니다 :

(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에 대한 코드를 찾을 수 있습니다. 추가를 지원하기 위해 확장하기는 쉽습니다.