파일을로드하려고하는데 이전에 하드 코드 된 파일 위치 (예 : "c : \ location \ file.txt")를 사용했지만 몇 명의 친구도 파일, 나는 그들이 어디서나 실행 파일을 넣을 수 있도록하고 싶습니다. 나는 그들이 원하는 폴더를 사용자가에 자신의 실행를 추가 할 수 있도록 변경하기 위해 노력하고있어, 다음 그들은 폴더를 생성하고 설정이 그것으로 파일을 넣어현재 디렉토리의 파일 열기
ifstream myfile;
myfile.open("c:\\client\\settings.cfg");
: 같은
내 현재 코드 보인다 exe는 해당 설정을로드합니다.
ifstream myfile;
myfile.open("\\settings\\settings.cfg");
나는 장소에 몇 가지 기본적인 오류 처리 및 지금 파일을 찾을 수 없다는 항상 프로그램 오류가 밖으로있다.
파일 구조는 다음과 같습니다
[ART]
asset.png
[SETTINGS]
settings.cfg
client.exe
이 할 수있는 정말 간단한 일처럼 보인다,하지만 난 그것을 할 수있는 방법을 찾을 수 없습니다. 파일 읽기 및 쓰기에 대한 모든 예제 및 자습서는 실행 파일의 디렉토리에있는 파일 만 처리하거나 c : \ 폴더에 하드 코드화됩니다.
아무도 내가이 작업을 수행하는 방법을 알려줄 수 있습니까?
이 작품! 감사! – user2827019
@ user2827019 필자의 대답에서 언급했듯이 이것은 실행 파일의 디렉토리와 관련이 없습니다. 그것은 단지 사용자의 현재 디렉토리와 관련이 있습니다. 사용자가 해당 디렉토리에서 실행 파일을 시작하면 실행 파일의 디렉토리와 일치합니다. –
@ user2827019 : 문제 없습니다. 한 가지주의 할 점은 실행 디렉토리가 아닌 * working directory *를 기반으로한다는 것입니다. 따라서 바로 가기를 만들고 작업 디렉토리 (Windows 바로 가기의 "시작 위치"폴더)를 변경하면 해당 폴더가 보입니다. –