2014-12-08 2 views
0

현재 파일 이름 정규화 프로그램을 프로그래밍 중입니다. 파일 형식 및 폴더가 없습니다. 나는 파일의 이름을 변경하는 경우 가 나는 형식에 영향을 미치지 않도록해야 그러므로 나는 할 때, 그것은 형식에 영향을 미치지 않는 fileName의 모든 기간을 교체하려는 경우Java에서 파일/폴더의 이름을 바꿀 때 파일과 폴더를 구별하는 방법

fileName.substring(fileName.lastIndexOf("."),fileName.length) 

함으로써했다 이름의 마침표가있는 폴더는이 과정을 거치며 마침표의 마지막 인스턴스는 여전히 이름의 일부이므로 폴더 이름의 모든 점을 대체하지는 않습니다. 나는 이것을 고칠 수 있도록 파일과 폴더를 구별하는 방법을 알아야한다.

답변

4

당신은

someFile.isDirectory(); 

파일이있는 폴더이며, 그렇지 않은 경우는 false 경우는 true를 돌려 사용할 수 있습니다.

0

File.isDirectory()을 사용하면 을 테스트 할 때이 추상 경로 이름이 나타내는 파일이 디렉토리인지 여부를 테스트 할 수 있습니다.File.isFile()을 사용하여 을 테스트하면이 추상 경로 이름이 나타내는 파일이 파일인지 여부를 테스트 할 수 있습니다. 파일이 디렉토리가 아니고 다른 시스템 종속 기준을 만족하면 파일은 정상입니다.

File f = new File(fileName); 
if (f.isFile()) { 
    // it's a file. 
} else if (f.isDirectory()) { 
    // it's a directory. 
}