자바 파일 일괄 이름 바 꾸 기 친 측 사용 가능(간소화 판)

이전에 인터넷 에서 많은 동 영상 을 다운로드 하고 압축 을 풀 었 는데 안에 있 는 모든 파일 앞 에 긴 주소 가 있 는 것 을 발 견 했 기 때문에 나 는 모든 동 영상의 이름 이 도대체 무엇 인지 전혀 볼 수 없 었 다.
인터넷 에서 대량으로 이름 을 바 꾸 는 방법 을 찾 아 보 았 지만 내 가 원 하 는 것 이 아니 었 다.그렇다면 차라리 자바 로 직접 써 보 자.재 봤 는데 괜 찮 을 것 같 아 요.지금 나 눠 주세요.
선행 코드:

import java.io.File;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
/**
*       
* @author jack
*/
class ReplacementChain{
private Map<String,String> map;
public ReplacementChain() {
this.map = new HashMap<String, String>();
}
public Map<String, String> getMap() {
return map;
}
//         (     )
public ReplacementChain addRegulation(String oldStr , String newStr){
this.map.put(oldStr, newStr);
return this;
}
}
/**
*     
* @author Jack
*/
public class Rename {
/**
*      
* @param path
* @param replacementChain
*/
public static void multiRename(String path,ReplacementChain replacementChain){
File file = new File(path);
boolean isDirectory = file.isDirectory();
/**        ,   * */
if(!isDirectory){
System.out.println(path + "       !");
return;
}
String[] files = file.list();
File f = null;
String filename = "";
String oldFileName = ""; //     
/**         * */
for(String fileName : files){
oldFileName = fileName;
Map<String, String> map = replacementChain.getMap();
for (Entry<String, String> entry : map.entrySet()) { 
fileName = fileName.replace(entry.getKey(), entry.getValue());
} 
f = new File(path + "\\" + oldFileName); //            
f.renameTo(new File(path + "\\" + fileName));
}
System.out.println("  ,       !");
}
public static void main(String[] args) {
}
}
사용 방법:
만약 내 가 지금 폴 더 가 있다 면,안에 txt 파일 이 몇 개 있 고,모두 긴 접두사 와 접두사 가 있다.

이제 나 는 그들의 접 두 사 를 모두 없 애고 싶다.
첫 번 째 단 계 는 main 방법 에서 ReplacementChain 류 의 인 스 턴 스 를 새로 만 듭 니 다.이것 은 규칙 류 입 니 다.주로 교체 규칙 을 설정 하 는 것 이다.
ReplacementChain replacementChain = new ReplacementChain();
두 번 째 단계,교체 규칙 추가
첫 번 째 파일 의 전체 이름:
[나 는 정말 길 고 긴 접두사 다]~~~~소설 001(나 는 귀여운 꼬리 다).txt
우 리 는[나 는 아주 긴 접두사 입 니 다]~~~~와(나 는 귀여운 꼬리 입 니 다)를 없 애고 replacementChain 에 두 개의 대체 규칙 만 추가 하면 됩 니 다.
replacementChain.addRegulation("[나 는 정말 길 고 긴 접두사 다]~~~~",").addRegulation("(나 는 귀여운 꼬리 다)",");
addRegulation 은 체인 호출 을 지원 합 니 다.
세 번 째 단 계 는 일괄 이름 바 꾸 기 방법 을 호출 합 니 다.
이름 바 꾸 기.multiRename("F:\\테스트 폴 더",replacementChain);
두 개의 인 자 를 전달 합 니 다.첫 번 째 는 일괄 처리 해 야 할 파일 이 있 는 폴 더 경로 이 고 두 번 째 는 replacementChain 대상 입 니 다.
운행 하 다.
콘 솔 이 인쇄 되면:축하합니다.일괄 이름 변경 에 성공 하 였 습 니 다!
그럼 성공 한 거 야?
내 로 컬 파일 들 의 이름 이 대량으로 바 뀌 었 습 니 다:

위 에서 말 한 것 은 소 편 이 소개 한 자바 실현 파일 의 대량 이름 변경 친 측 사용 가능(간소화 판)입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기