java實(shí)現(xiàn)文件重命名的方法
本文實(shí)例講述了java實(shí)現(xiàn)文件重命名的方法。分享給大家供大家參考。具體如下:
下載的電影總是有一些存在網(wǎng)站名稱等沒用的信息 作為一個(gè)強(qiáng)迫癥患者 一定要?jiǎng)h除他們
package sys.file; import java.util.*; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.io.*; public class ZReName { public static void main(String args[]) { ZReName r = new ZReName(); r.replace(); //r.changeOrder(); } public void replace (){ File dir = new File("G://電影//那年那兔那些事兒[原畫版]"); // 這里寫上發(fā)替換的文件夾路徑,注意使用雙斜杠 String[] files = dir.list(); File f = null; String filename = ""; //String oldName = "[電影天堂www.dygod.cn]"; String oldName = ""; //名稱中要替換的部分 String newName = ""; //名稱中要替換成的樣子,為空時(shí)即為刪除 for (String file : files) { f = new File(dir, file); // 注意,這里一定要寫成File(fl,file)如果寫成File(file)是行不通的,一定要全路徑 filename = f.getName(); System.out.println(filename); String S1= "\\d{4}.(優(yōu)酷網(wǎng)|搜狐視頻)-"; ZReName r = new ZReName(); boolean b = r.regex1(S1, filename); oldName = r.regex(S1, filename); if (b){ //f.renameTo(new File(fl.getAbsolutePath()+"http://"+filename.replace("要替換掉的內(nèi)容","替換成的內(nèi)容"))); //這里可以反復(fù)使用replace替換,當(dāng)然也可以使用正則表達(dá)式來替換了 // 這里可以反復(fù)使用replace替換,當(dāng)然也可以使用正則表達(dá)式來替換了 f.renameTo(new File(dir.getAbsolutePath() + "http://"+ filename.replace(oldName, newName))); //將前X位刪除 //f.renameTo(new File(dir.getAbsolutePath() + "http://"+ filename.substring(9))); } } System.exit(0); } public void changeOrder (){ File dir = new File("G://合并"); // 這里寫上發(fā)替換的文件夾路徑,注意使用雙斜杠 String[] files = dir.list(); File f = null; String filename = ""; //String oldName = "[電影天堂www.dygod.cn]"; String oldName = ""; //名稱中要替換的部分 String newName = ""; //名稱中要替換成的樣子,為空時(shí)即為刪除 for (String file : files) { f = new File(dir, file); // 注意,這里一定要寫成File(fl,file)如果寫成File(file)是行不通的,一定要全路徑 filename = f.getName(); System.out.println(filename); String S1= "\\d+"; ZReName r = new ZReName(); boolean b = r.regex1(S1, filename); oldName = filename; newName = r.regex(S1, filename)+" "+filename; if (b){ //f.renameTo(new File(fl.getAbsolutePath()+"http://"+filename.replace("要替換掉的內(nèi)容","替換成的內(nèi)容")));//這里可以反復(fù)使用replace替換,當(dāng)然也可以使用正則表達(dá)式來替換了 // 這里可以反復(fù)使用replace替換,當(dāng)然也可以使用正則表達(dá)式來替換了 f.renameTo(new File(dir.getAbsolutePath() + "http://"+ filename.replace(oldName, newName))); //將前X位刪除 //f.renameTo(new File(dir.getAbsolutePath() + "http://"+ filename.substring(9))); } } System.exit(0); } //S1要查找的正則表達(dá)式,S2查找源 public String regex(String S1,String S2){ Pattern p = Pattern.compile(S1); Matcher m = p.matcher(S2); boolean result = m.find(); //System.out.println(result); String S =""; if (result) { S = m.group(); System.out.println(S); } return S; } //S1要查找的正則表達(dá)式,S2查找源 public boolean regex1(String S1,String S2){ Pattern p = Pattern.compile(S1); Matcher m = p.matcher(S2); boolean result = m.find(); System.out.println(result); return result; } }
希望本文所述對(duì)大家的java程序設(shè)計(jì)有所幫助。
相關(guān)文章
java小知識(shí)之查詢數(shù)據(jù)庫數(shù)據(jù)的元信息
這篇文章主要給大家介紹了關(guān)于java小知識(shí)之查詢數(shù)據(jù)庫數(shù)據(jù)的元信息,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2021-10-10詳解SpringBoot配置文件啟動(dòng)時(shí)動(dòng)態(tài)配置參數(shù)方法
這篇文章主要介紹了詳解SpringBoot配置文件啟動(dòng)時(shí)動(dòng)態(tài)配置參數(shù)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11SpringMVC中的ConversionServiceExposingInterceptor工具類解析
這篇文章主要介紹了SpringMVC中的ConversionServiceExposingInterceptor工具類解析,ConversionServiceExposingInterceptor是Spring MVC的一個(gè)HandlerInterceptor,用于向請(qǐng)求添加一個(gè)屬性,需要的朋友可以參考下2023-12-12MyBatis 動(dòng)態(tài)SQL之where標(biāo)簽的使用
本文主要介紹了MyBatis 動(dòng)態(tài)SQL之where標(biāo)簽,where 標(biāo)簽主要用來簡(jiǎn)化 SQL 語句中的條件判斷,可以自動(dòng)處理 AND/OR 條件,下面就來具體介紹一下2024-01-01java獲取新insert數(shù)據(jù)自增id的實(shí)現(xiàn)方法
這篇文章主要介紹了java獲取新insert數(shù)據(jù)自增id的實(shí)現(xiàn)方法,在具體生成id的時(shí)候,我們的操作順序一般是:先在主表中插入記錄,然后獲得自動(dòng)生成的id,以它為基礎(chǔ)插入從表的記錄,需要的朋友可以參考下2019-06-06java組件commons-fileupload實(shí)現(xiàn)文件上傳、下載、在線打開
這篇文章主要介紹了java組件commons-fileupload實(shí)現(xiàn)文件上傳、下載、在線打開,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10SpringBoot 任務(wù)調(diào)度動(dòng)態(tài)設(shè)置方式(不用重啟服務(wù))
這篇文章主要介紹了SpringBoot 任務(wù)調(diào)度 動(dòng)態(tài)設(shè)置方式(不用重啟服務(wù)),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11Java 數(shù)據(jù)庫時(shí)間返回前端顯示錯(cuò)誤(差8個(gè)小時(shí))的解決方法
本文主要介紹了Java 數(shù)據(jù)庫時(shí)間返回前端顯示錯(cuò)誤(差8個(gè)小時(shí))的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-08-08