2013-03-25 5 views
2

"데이터"라는 폴더에 많은 양의 데이터가 저장된 Qt 애플리케이션이 있습니다.이 애플리케이션은 애플리케이션 qrc 파일과 동일한 디렉토리에 있습니다.Qt : 데이터 디렉토리 경로

어떻게 든이 응용 프로그램에서이 폴더를 찾을 위치를 알고 싶습니다. 매번 다시 컴파일 할 필요없이 새로운 데이터 파일을 Data 디렉터리에 추가하고 제거 할 수 있기를 원하기 때문에 모든 데이터를 리소스 파일로 추가하고 싶지 않습니다. 실행 디렉토리가 운영 체제, 응용 프로그램 시작 방법 등에 따라 다를 수 있으므로 상대 파일 경로를 하드 코드하고 싶지 않습니다. 응용 프로그램이 동일하지 않으므로 절대 디렉토리를 하드 코딩하고 싶지 않습니다. 다른 컴퓨터에서 컴파일됩니다.

응용 프로그램에서 데이터 폴더를 찾는 위치를 어떻게 알 수 있습니까? 프로젝트 전체의 디렉토리 구조는 OS/기계에 관계없이 동일합니다.

+1

일반적인 설치에서이 데이터 폴더의 위치는 어디입니까? QDesktopServices의 'storageLocation' 메소드를 살펴 보았습니까? – andref

답변

0

가능한 모든 OS 응용 프로그램 조합 목록과 읽을 경로를 포함하는 xml 구성 파일이 있어야합니다. 시작시

는 설정 파일을 읽고 XML 파일에서 사용할 경로를 결정하는 OS 버전 및 기타 구성을 검사하는 응용 프로그램 디렉토리 글로벌 qApp를 통해 QCoreApplication.applicationDirPath()를 통해 사용할 수 있습니다

3

읽어

#include <QApplication> 

    ... 
    QString appDir = qApp.applicationDirPath();