If I write a file using
(with-open-file (s "~/example.sexp" :direction :output)
(write '(1 2 3) :stream s)
(write '(4 5 6) :stream s)
(write '(7 8 9) :stream s))
A file is created containing
(1 2 3)(4 5 6)(7 8 9)
But when I attempt to open and read it using
(setf f (open "~/example.sexp"))
(read :input-stream f)
I get an ":INPUT-STREAM is not of type STREAM" error.
(type-of f)
returns STREAM::LATIN-1-FILE-STREAM which looks like it is at least close to what I need. What is the difference?
How can I read the lists I've written to the file?
question from:
https://stackoverflow.com/questions/65938469/is-there-an-easy-way-to-read-a-list-from-an-input-file-in-common-lisp 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…