Пролог - нахождение текущего каталога, относительный каталог для «сказать» предикат
-
26-09-2019 - |
Вопрос
У меня проблемы с попыткой выяснить, как получить пролог, чтобы выпить текстовый файл, где я этого хочу. Я в настоящее время делаю кучу операций, а затем использую
tell('output.txt')
Для записи вывода. Теперь проблема в том, что когда я делаю это, она создает этот файл в папке SWI Bin . Мне было интересно, есть ли способ сделать его создать этот файл в каталоге, содержащий файл .pl. Так что даже если файл был перемещен (и будет), текстовый файл создается вправо, где исходный файл.
Короче говоря, есть способ получить местоположение исходного файла после просмотра исходного файла?
Огромное спасибо!
Решение
Вы можете получить имена всех загруженных файлов, использующих source_file/1
.
Из руководства Swi-Prolog:
source_file(?File)
ИСТИНА, если файл является загруженным исходным файлом Prolog. Файл - это абсолютный и канонический путь к исходному файлу.