2012-11-02 4 views
4

나는 Java 프로젝트에서 작업 중이며 폴더에 txt 파일을 직접 생성 할 수있는 코드를 작성할 수 있는지 궁금합니다 (예 : bin 폴더). 이클립스에서는 getClass()을 사용하여 txt 파일에 액세스 할 수 있습니다. 따라서 사용자는 프로그램을 사용할 때 생성 된 txt 파일을 볼 수 없습니다.bin 폴더에 txt 파일을 만드는 방법

+0

사용자가 볼 수 없다는 것은 무엇을 의미합니까? 그는 파일 시스템의 디렉토리와 파일에 액세스 할 수있는 적절한 권한이있는 한 항상이 작업을 수행 할 수 있습니다. – Jagger

답변

5

분명히 할 수 있습니다. 그러나 다시 생각해보십시오. 사용자가 Eclipse에서 프로그램을 실행하지 않습니다. 일반적으로 사용자는 jar로 압축 된 프로그램을 실행하므로 모든 클래스 파일은 파일 시스템이 아니라 jar 파일에 있습니다. 또한 사용자는 특수 폴더를 제외하고는 파일 시스템에 쓸 수있는 권한이 없을 수도 있습니다.

결론 : 파일 시스템에 런타임 데이터를 저장하는 응용 프로그램을 만들려면 사용자 홈 또는 임시 디렉토리 중 하나 여야하며 java.util.prefs.Preferences은 유닉스에서 파일 시스템을 사용하여 데이터를 저장 및 검색하는 플랫폼 독립적 인 방법을 제공합니다 및 Windows에서 레지스트리.

파일을 직접 작성하려면 시스템 등록 정보 user.homejava.io.tmpdir을 사용하여 가정 및 임시 디렉토리를 검색 할 수 있습니다.

+0

런타임에 생성 된 jar 파일에 임시 txt 파일을 만들 수 있나요? 그렇지 않으면 java.io.tmpdir 또는 다른 디렉토리를 사용해야합니까? – ChimstarTech

관련 문제