最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java 實(shí)現(xiàn)文件批量重命名親測可用(精簡版)

 更新時間:2016年11月11日 14:46:31   作者:剽悍一小兔  
本文給大家分享一段自己寫的java代碼實(shí)現(xiàn)文件批量重命名,親測試過沒有任何問題,大家可以放心使用

之前在網(wǎng)上下載了很多視頻,解壓縮后,發(fā)現(xiàn)里面每個文件前面都有一長串的網(wǎng)址,導(dǎo)致我根本看不清每個視頻的名字到底叫什么?

網(wǎng)上搜了一些批量重命名的方法,可都不是我想要的,既然這樣,干脆自己動手用Java寫一個吧。測了一下應(yīng)該沒問題,現(xiàn)在分享出來。

先上代碼:

import java.io.File;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
/**
* 重命名規(guī)則類
* @author jack
*/
class ReplacementChain{
private Map<String,String> map;
public ReplacementChain() {
this.map = new HashMap<String, String>();
}
public Map<String, String> getMap() {
return map;
}
// 添加新的替換規(guī)則(字符串替換)
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 = ""; //之前的名字
/** 循環(huán)遍歷所有文件* */
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) {
}
}

使用方法:

假如我現(xiàn)在有一個文件夾,里面有若干個txt文件,都有一個很長的前綴和后綴。

現(xiàn)在我希望把它們的前綴都去掉;

第一步,在main方法里面新建一個 ReplacementChain 類的實(shí)例,這是一個規(guī)則類。主要就是設(shè)置一些替換規(guī)則。

ReplacementChain replacementChain = new ReplacementChain();

第二步,新增替換規(guī)則

第一個文件的全名:

【我是一個好長好長的前綴哦】~~~~~ 小說001(我是萌萌的小尾巴).txt

我們希望把【我是一個好長好長的前綴哦】~~~~~ 和 (我是萌萌的小尾巴) 去掉,只需要在replacementChain上面添加兩個替換規(guī)則即可。

replacementChain.addRegulation("【我是一個好長好長的前綴哦】~~~~~", "").addRegulation("(我是萌萌的小尾巴)", "");

addRegulation支持鏈?zhǔn)秸{(diào)用。

第三步,調(diào)用批量重命名方法

Rename.multiRename("F:\\測試文件夾", replacementChain);

傳兩個參數(shù),第一個是需要批量處理的文件所在的文件夾路徑,第二個就是 replacementChain 對象。

運(yùn)行

控制臺如果打印出: 恭喜,批量重命名成功!

那么就說明成功了。

我本地的那些文件已經(jīng)被批量重命名了:

以上所述是小編給大家介紹的Java 實(shí)現(xiàn)文件批量重命名親測可用(精簡版),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 迅速學(xué)會@ConfigurationProperties的使用操作

    迅速學(xué)會@ConfigurationProperties的使用操作

    這篇文章主要介紹了迅速學(xué)會@ConfigurationProperties的使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • Java將GeoHash轉(zhuǎn)化為對應(yīng)的經(jīng)緯度坐標(biāo)實(shí)例代碼

    Java將GeoHash轉(zhuǎn)化為對應(yīng)的經(jīng)緯度坐標(biāo)實(shí)例代碼

    這篇文章主要介紹了Java實(shí)現(xiàn)將GeoHash轉(zhuǎn)化為對應(yīng)的經(jīng)緯度坐標(biāo)的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • Java后臺接收數(shù)據(jù)的三種方式(url、form-data與application/json)

    Java后臺接收數(shù)據(jù)的三種方式(url、form-data與application/json)

    本文主要介紹了Java后臺接收數(shù)據(jù)的三種方式(url、form-data與application/json),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Java設(shè)計模式之創(chuàng)建者模式簡介

    Java設(shè)計模式之創(chuàng)建者模式簡介

    這篇文章主要介紹了Java設(shè)計模式之創(chuàng)建者模式,需要的朋友可以參考下
    2014-07-07
  • mybatis-plus(insertBatchSomeColumn批量添加方式)

    mybatis-plus(insertBatchSomeColumn批量添加方式)

    這篇文章主要介紹了mybatis-plus(insertBatchSomeColumn批量添加方式),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Java橋接模式實(shí)例詳解【簡單版與升級版】

    Java橋接模式實(shí)例詳解【簡單版與升級版】

    這篇文章主要介紹了Java橋接模式,結(jié)合實(shí)例形式分析了java橋接模式簡單版與升級版兩種實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2019-07-07
  • SpringBoot3.x嵌入MongoDB進(jìn)行測試的步驟詳解

    SpringBoot3.x嵌入MongoDB進(jìn)行測試的步驟詳解

    本文介紹了在?Spring?Boot?應(yīng)用中使用Flapdoodle?Embed?Mongo進(jìn)行?MongoDB?測試的方法,包括Embed?Mongo?的概念,添加依賴、配置、運(yùn)行測試的步驟,還列舉了其優(yōu)勢如快速啟動關(guān)閉、環(huán)境一致、無需外部依賴等,以及注意事項和結(jié)論,需要的朋友可以參考下
    2024-12-12
  • springmvc流程圖以及配置解析

    springmvc流程圖以及配置解析

    這篇文章主要介紹了springmvc流程圖以及配置解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • java面試題之try中含return語句時代碼的執(zhí)行順序詳解

    java面試題之try中含return語句時代碼的執(zhí)行順序詳解

    這篇文章主要介紹了關(guān)于java中的一道面試題,這套題就是在try中含return語句時代碼的執(zhí)行順序,這個問題看似簡單,卻暗藏殺機(jī)啊!文中通過一個個例子詳細(xì)介紹了其中玄機(jī),需要的朋友可以參考學(xué)習(xí),下面來一起看看吧。
    2017-04-04
  • IDEA中的.iml文件和.idea文件的作用及意義

    IDEA中的.iml文件和.idea文件的作用及意義

    iml是 項目標(biāo)識文件,每一個模塊都有一個iml文件,存儲模塊的相關(guān)信息,跟eclipse的project文件是一樣的功能,這篇文章主要介紹了IDEA中的.iml文件和.idea文件的作用,需要的朋友可以參考下
    2023-09-09

最新評論

辉南县| 岐山县| 九寨沟县| 奉贤区| 柳河县| 中超| 独山县| 保靖县| 甘南县| 镇安县| 莱州市| 香格里拉县| 康定县| 时尚| 潍坊市| 枣阳市| 桃江县| 同仁县| 湖南省| 黔西县| 工布江达县| 永康市| 太和县| 无锡市| 万山特区| 阳山县| 开封市| 波密县| 和田县| 漠河县| 昌宁县| 商水县| 万荣县| 阿尔山市| 北票市| 平潭县| 邻水| 上饶县| 斗六市| 宁津县| 定结县|