2012-12-11 4 views
0

파일이 저장된 폴더 이름을 인쇄하려고합니다.파일이있는 폴더 이름을 인쇄하십시오.

예 :

이 가능 "폴더 이름"을 인쇄하는 것입니다 바탕 화면 \ 폴더 이름 \의 picture.jpg 대신 \ 사용자 \ : 나는 경로 C에 저장된 파일 picture.jpg 대신 있습니다. 나는 문자열을 시도했지만 그의 문자 번호를 하드 코딩하는 날에 의존하는 것 같다 EG :. 내 프로그램이 출시 될, 그리고 사용자가 다른 파일 경로를 가지고 있다면

System.out.println(path.substring(33, 38)); 

-이 상쇄 부분 문자열

파일을 선택하려면, 내 프로그램은 따라서 다음 코드

chooser = new JFileChooser(); 
     chooser.setCurrentDirectory(new java.io.File(computerUsername+"\\Desktop\\Foldername")); 
     chooser.setDialogTitle(choosertitle); 
     chooser.setAcceptAllFileFilterUsed(true); 

을 가지고, 아래의 코드는 nullpointexpection 오류를 출력합니다. chooser.getPath(). getName();

답변

3

java.io.File이 필요합니다. 그것은 경로를 변형하는 방법을 가지고 있습니다. 당신이이하지 않은 경우

System.out.println(new File(path).getParentFile().getName()); 

은 "손으로"를 할 수있는 방법은 그 주위 경로 분리 문자 (\) 및 분할을 찾아하는 것입니다.

+0

완벽하게 작동했습니다. 많은 Vlad 감사합니다! –

2
File file = new File("C:\\Users\\Desktop\\Foldername\\picture.jpg"); 
String parentFolderName = file.getParentFile().getName(); 
관련 문제