-2
아니지만, 나는 오류 "파일 스트림 아니다"점점 계속 :CLISP 오류 : 공주 역 : 인수는 내가 커먼 리스프에서 파일에 쓰기를 시도하고 스트림
[1]> (open "file.txt" :direction :output :if-does-not-exist :create :if-exists :supersede)
#<output buffered file-stream character #P"file.txt">
[2]> (princ 'Hello "file.txt")
*** - princ: argument "file.txt" is not a stream
심지어를 시도 파일을 닫으면 오류가 반환됩니다.
파일이 제대로 만들어 졌으므로 권한 문제 일 수 있다고 생각하지만 그럴 것 같지 않습니다. 나는 지금까지 운이 없이이 오류를 인터넷 검색했습니다. 아무도 내가 뭘 잘못하고 있는지 알아? 고맙습니다.
PS : 나는 CLISP 2.49 리눅스 민트 17.3 로사를 실행 해요 (2010-07-07)
고마워요! 나는'열린 파일 (open-file) '에 대해 읽었지 만, 나는 그것을 내 과제에 사용하는 것이 허락되지 않는다고 나는 믿는다. 대신에 '(setq 파일 (열린 "file.txt": 방향 : 출력 : if-does-not-exist : 생성 : if-exists : supersede)) (princ 'Hello 파일) 파일)' 잘 작동했습니다. – LePoufCelebre
@LePoufCelebre 이것은 다른 프로그래밍 언어와 전혀 다르지 않습니다. C에서, 예를 들어,'int fd = open ("foo.txt", ...); 쓰기 (fd, ...);'not'open ("foo.txt", ...); 쓰기 ("foo.txt", ...);'. 아니면 자바에서'FileOutputStream out = new FileOutputStream ("foo.txt"); out.write (...)', 아닌'FileOutputStream out = new FIleOutputStream ("foo.txt"); "foo.txt".write (...);'. –
@ JoshuaTaylor, 고맙습니다. 나는 이것을 몰랐습니다. – LePoufCelebre