LISP: Jak odczytać zawartość z pliku i zapisać ją w innym pliku?

Chcę napisać funkcję, która ma jako argumenty nazwy dwóch plików i kopiuje zawartość z pierwszego pliku do drugiego.

Do tej pory napisałem funkcję, która odczytuje z pliku:

(defun readFile (name)
 (let ((in (open name)))
  (format t "~a~%" (read-line in))
   (close in)))

I funkcja, która zapisuje ciąg znaków do pliku:

(defun writeFile (name content)
(with-open-file (stream name
    :direction :output
    :if-exists :overwrite
    :if-does-not-exist :create)
(format stream content)))

Podążając za instrukcjami Savantesa, napisałem tę funkcję ponownie i tak to wygląda:

(defun read-write-to-file (input-file output-file)
(WITH-OPEN-FILE (output-stream output-file
         :direction :output
         :if-exists :new-version
         :if-does-not-exist :create)
  (WITH-OPEN-FILE (input-stream input-file
                 :direction :input)
        (FORMAT output-stream "~a" (READ input-stream nil 'eof))
)))

Teraz jedynym problemem jest to, że nie odczytuje całego pliku.

questionAnswers(5)

yourAnswerToTheQuestion