Здравствуйте, всё никак не могу при считывании CSV файла в Хэш-таблицу, символ перевода строки.
вот код:
(defun парсер-CSV (file Хэш-таблица)
;Обнуление строк и столбцов
(setf Строка 0
Столбец 0)
;Открытие файла
(with-open-file (Поток file :direction :input)
;итерирование по потоку из файла
(loop
for Строка-потока = (read-line Поток nil)
;если строка не равна nil
while Строка-потока
do(progn(incf Строка);увеличение строки на одну еденицу
(setf Столбец 0);Сброс значения столбца до нуля
(loop for var in (cl-ppcre:split ";" Строка-потока);итерирование строки по столбцам
do(progn (incf Столбец);увеличение строки на еденицу
(setf(gethash (Format nil "~a,~a" Строка Столбец) Хэш-таблица)var)))))))
Просто записывается в хэш вместе с символом и потом если эта ячейка вставляется в середину строки то каретка переводится на следующую строку. Как я пробовал решить проблему могу написать если нужно. В емаксе этот символ непечатаемый отображается как «^M» но в инспекторе «Return». Простое сравнение на eql не работает....