2014-11-07 3 views
0

CLIPS 프로그램의 특정 디렉토리에 규칙 및 사실을 저장하려고합니다.CLIPS가 경로를 추가 함에도 불구하고 Virtualstore에 파일 저장

는 ("C : \ TMP \ rules.clp"다른 이름으로 저장)

:

1하지만 클립을 보인다는 경로 정보를 (저장-사실 "C \ TMP \ facts1")를 무시합니다. 내 Windows 사용자 이름은 CLIPS 설치 디렉토리의 소유자가 아니기 때문에 파일은 가상 저장소 디렉토리에 저장됩니다.

C : \ Users \ USERNAME \ AppData \ Local \ VirtualStore \ Program Files (x86) \ CLIPS \ Bin

2- 시스템 명령을 실행하고 경로를 포함하면 동일한 일이 발생합니다. 경로는 무시되며 메모장에서 원하는 파일을 찾을 수 없습니다.

(시스템 "메모장 C : \ TMP \ 경우 output.txt")

저장이 명령을 강제 할 수있는 방법이 있나요/특정 디렉토리에서 읽어?

답변

1

CLIPS에는 운영 체제에서 설정 한 디렉토리/파일 권한을 무시할 수 없습니다. save/save-facts 명령의 경로는 파일 열기 (fopen 또는 fopen_s)를 위해 시스템 라이브러리로 전달되기 전에 수정되지 않습니다. 사용중인 사용자 계정에 쓰기 권한이없는 경우 디렉토리 권한을 변경하는 것이 좋습니다.

+0

게리, 나는 당신의 대답을 내 수업에서 인용했는데 나는 학생에게 당혹 스러웠다. 실제로 파일에 경로를 추가 할 수있는 것으로 보입니다. 파일 이름을 따옴표로 묶고 슬래시를 사용해야합니다. 좋아요 : (save-facts "c : /tmp/test.facts") – wmac

0

나는이 문제를 발견했다고 생각한다.

경로는 모두 큰 따옴표로 묶고 슬래시는 슬래시로 변환해야합니다.