ここに私のファイルと関数があります:
List1.txt => ネコ イヌ トラ クマ
List2.txt => 猫 犬 虎
これらのファイルは、windows xp でエンコードされた ANSI です。
(defun get-file (filename)
(with-open-file (stream filename)
(loop for line = (read-line stream nil)
while line collect line)))
(defparameter *file1* (get-file "list1.txt"))
(defparameter *file2* (get-file "list2.txt"))
(set-difference *file1* *file2*)
出力は単なる「クマ」になると思います。ただし、差分として ("cat"、"dog"、"tiger"、"bear") を返します。ファイルから情報を読み取ることが原因であると想定していますが、そこで立ち往生していました。お時間をいただきありがとうございます。