당신이 나를 위해 몇 가지 코드를 볼 수 있습니다 기대했다. 필자의 원래 의도는 백업중인 파일로 복사되는 파일의 이름을 바꾸는 것이 었습니다. (따라서 문자열 이름 = origfile.getName();Files.copy 파일 이름 바꾸기
이 있었다 내 코드 : 이제
File file2 = new File(name);
File srcfile = sourcepath.toFile();
srcfile.renameTo(file2);
, 몇 후, 그래서 내가 IOException이 오류를 받기 시작했다 잠시 후, 점까지 일 . 고민의 시간 나는 포기하고 단지 이름을 바꾸는 부분 삭제 된
소호 및 복사 할 때 여전히 파일 이름을 변경 보라
을 이제 내 질문 :..? 그것을 Files.copy합니까 몇 가지 이상한 일이 있습니까 여기서 일어나는거야? 내가하고 싶은 일을 정확히하고, b 나는 지옥처럼 당황하고있다. 내 코드가 작동하는 이유는 무엇입니까?
는 그래 나는 경우가 고장 나 작동을 멈 춥니 다, 알고 싶어요. 나는 일을하고 왜 그런지 알 수 없다! 편집
: 게시 할 때, 내가 좀 더 내 질문을 제기하자 러시의 비트에
미안했다 명확 :
내 의도는 내 원본 경로 파일의 원래 이름으로 이름을 바꾼 것이 었습니다백업 중입니다. 이름을 바꿀 코드가 있었지만 IOException을 던져서 삭제했습니다. 필자는 Files.Copy 만 사용 했으므로 sourcepath는 원래 값을 유지하고 for 루프의 각 인스턴스를 복사한다고 가정했습니다. 그러나 아니요, 백업 된 각 파일의 원본 이름을 완벽하게 바꿉니다. 어디서 어떻게?
나는 무엇이 문제인지 명확하지 않습니다. –
파일을 지정하는 코드가 없을 때 내 파일의 이름이 변경되는 이유를 알고 싶습니다. 복사 할 때 sourcepath 파일의 이름이 변경되는 이유는 무엇입니까? (이름 바꾸기를 원하지만 내 이름 바꾸기 코드가 작동하지 않아 삭제했습니다.) –
... 파일 복사 중 "이름 바꾸기"를하지 않으면 소스 파일을 대상 파일에 복사합니다. 소스와 타겟을 전달합니다. 원본을 대상에 복사합니다. 원본 파일의 이름을 바꾸고 createNewFile을 수행합니다. 나는 아직도 혼란이 어디에 있는지 분명하지 않다. –