전체 디렉터리의 이름을 프로그래밍 방식으로 바꾸려고합니다. 디렉토리는 로컬 파일 시스템에 마운트 된 서버에 있습니다. 이 첫 번째 이름을 변경하는 경우에만 시도하는 지금로컬로 마운트 된 서버에서 파일의 이름을 바꾸는 방법은 무엇입니까?
public static void main(String[] args) {
File dir = new File("/Volumes/video/Serien/Scrubs/Season 1");
System.out.println("Start renaming: " + dir);
String[] files = dir.list();
for (String file : files) {
System.out.println("Old name: " + file);
File renamedFile = new File(file);
System.out.println(renamedFile.toString());
boolean success = renamedFile.renameTo(new File("Test " + renamedFile.toString()));
System.out.println("New name: "+ renamedFile.toString());
System.out.println(success);
break;
}
}
I,하지만 그럼에도 불구하고 false를 반환하고 이름을 변경하지 않습니다 :이 같은 수행을 시도하고있다.
어떤 힌트가 필요한가요? 나는 예외가 없다. 나는 서버가 인증을 요구하기 때문이라고 생각한다. renameTo()가 플랫폼에 의존하는 것 때문에 :
편집 나는 사자 OSX
실제로 이름을 바꾸지 않으면 정확히 성공해야하는 이유는 무엇입니까? 이름을 변경하면 실제로 성공할 수 있습니다. – Bombe
나는 이것을 분명히해야만했다. 이름을 변경하면 성공하지 못합니다. –
http://stackoverflow.com/questions/1000183/reliable-file-renameto-alternative-on-windows에 흥미로운 해답이 몇 가지 있습니다. –