1. 程式人生 > >批量重新命名一個資料夾的檔案,例如:img下有600張圖片,對其重名

批量重新命名一個資料夾的檔案,例如:img下有600張圖片,對其重名

import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;

public class FileUtilDeal {
		public static void main(String[] args) {
			//File file = new File("E:\\極草\\img\\F20150603-1638459781.jpg");
			//fileRename(file);
			String [] fileName = getFileName("E:\\極草\\img");  // img資料夾下所有的檔名陣列
	        ArrayList<String> listFileName = new ArrayList<String>(); 
	        getAllFileName("E:\\極草\\img",listFileName);
	        for(String name:listFileName)
	        {
	        	fileRename(name);
	        }
		}
		
		public static void fileRename(String fileName){
			File files = new File("E:\\極草\\img\\"+fileName);
			String filePath = files.getPath();
			System.out.println(filePath);
			if(files.exists()){
				files.renameTo(new File("E:\\極草\\img\\"+add000(fileName)+fileName));
			}
		}
		
		public static void getAllFileName(String path,ArrayList<String> fileName)
	    {
	        File file = new File(path);
	        File [] files = file.listFiles();
	        String [] names = file.list();
	        if(names != null)
	        fileName.addAll(Arrays.asList(names));
	        for(File a:files)
	        {
	            if(a.isDirectory())
	            {
	                getAllFileName(a.getAbsolutePath(),fileName);
	            }
	        }
	    }
		//
		public static String [] getFileName(String path)
	    {
	        File file = new File(path);
	        String [] fileName = file.list();
	        return fileName;
	    }
		//保證檔名的長度為30個字元
		public static String  add000(String fileName){
			String prefix=fileName.substring(fileName.lastIndexOf(".")+1);
			int dot = fileName.lastIndexOf('.'); 
            String f = fileName.substring(0, dot); 
			int _len = 30 - f.length();
			StringBuffer buf = new StringBuffer();
			for (int i = 0; i < _len; i++) {
				buf.append("0");
			}
			return buf.toString();
		}
}

相關推薦

批量重新命名一個資料檔案例如img600圖片

import java.io.File; import java.util.ArrayList; import java.util.Arrays; public class FileUtilDeal { public static void main(String[]

Python 重新命名一個資料下子資料內的圖片

從網上檔下來一些圖片素材,放在了不同的子資料夾內,想把這些圖片按子資料夾名稱重新命名,並將所有圖片放在一個資料夾下, import os filenames = os.listdir('.') for file in filenames: i = 0 ima

批量替換掉一個資料內所有html檔案裡相同的內容

今天遇到一個需求,升級一個專案的jquery版本。因為不是我們公司做的,所以沒有原始碼,然後每一個檔案都需要修改。 一共有幾千個頁面,手動修改肯定不現實。最後找到了一個最簡單的方法。  Notepad++批量修改多個文件中的內容,文件可以是文字文件,也可以是HTML檔案,也可以是P

用TC批量複製另一個資料中的同名檔案

製作資料集的時候,有JPEGImages資料夾和Annotations資料夾,這兩個資料夾下遍的檔案相同部分只有檔名,而後綴不同,先從JPEGImages中挑去部分圖片,以及Annotations同對應的同名.xml檔案,但是如果每個資料夾都操作一遍費事費力,現有簡單方法如下

LinuxShell指令碼實現批量重新命名資料批量重新命名檔案(讓原本繁重的工作變得簡單)

最近接了個專案,具體做什麼都不說了,其中有個工作就是批量更改資料夾,然後批量更改資料夾下的檔名字,一會兒先貼程式碼,再詳細解釋步驟。 下面是我的簡化版的目錄結構,實際上有上百個。 project dir1 dir1.py dir2

python指令碼自動刪除空資料和非指定型別檔案(附贈批量重新命名)

python指令碼自動刪除空資料夾和非指定型別檔案 直接上程式碼吧: # -*- coding: utf-8 -*- """ Created on Sun Sep 16 22:51:27 2018 @author: lele """ import

批量讀取一個資料裡類似命名的mat檔案

參考網址: Matlab讀取同一路徑下多個txt或mat檔案總結 matlab 批量讀取資料檔案.mat .dat 整理:matlab批量讀入資料檔案的方法  首先命名方式體現在只是名字裡數字有變化,其他部分是一樣的,一共有1227個。 思路:通過迴圈,利用num2str將名字中變化的

建立一個資料並在資料批量建立檔案批量改名。

package com.zuoye; import java.io.File; import java.io.IOException; import java.text.DecimalFormat; //編寫一個程式,在F盤下建立一個“Java學習”的資料夾,並在資料夾中一

每天學點linux--(用shell實現將一個資料下面的所有檔案拷貝到另一個資料/shell如何重新命名一個檔案

一、用shell實現將一個資料夾下面的所有檔案拷貝到另一個資料夾下 收穫: 1、在if test -d $1的時候,if後面一定要有空格 2、在使用變數的時候一定要用$! 3、學會`commad`的用法 下面給出程式碼,還有一些不完善的地方,有空補全一下,第一次shell

Windows資料所有圖片批量重新命名(附C++pythonmatlab程式碼)

原資料夾 重新命名之後 C++ #include <iostream> #include <io.h> //對系統檔案進行操作的標頭檔案 #include <string> #include

用python批量獲取某路徑資料及子資料的指定型別檔案並按原資料結構批量儲存處理後的檔案

因為是把自己成功執行的整個程式碼按幾部分截取出來的,所以每一小節程式碼不一定能單獨執行,特此說明。 1.獲取某路徑資料夾及子資料夾下的指定pcm型別檔案的全部路徑 import os def eachfile(filepath):     pathdi

利用Java實現找出一個資料中所有的以某個字尾命名的所有檔案

已經自學Java一個多月了,一直沒有利用Java實現自己的需求,直到這次,編寫Java程式,實現自己的需求,很有成就感。當然不會像程式設計大神一樣優秀,可是我會慢慢努力的。 因為需要在VS上配置PCL的環境,需要把PCL檔案中的以 ".lib" 結尾的檔案找出來,PCL庫檔

批量重新命名檔案結構

import os f = open("./name_test.txt", 'w') # 先建立一個空的文字 f_jpg = open("./name_jpg.txt", 'w') f_txt = open("./name_txt.txt", 'w') path = "./jzchina4/" #

如何監控一個資料裡面檔案的狀態是否更新過

有分簡單解法,和複雜解法,簡單解法可以去看tornado webframework 裡檔案被修改的方法,複雜解法是watchdog. 簡單解法限制很多,但實作快,複雜解法能解決的情況多,需要多裝一些外掛。 Tornado is a Python web framework and asynchronous

windows批量重新命名資料檔名稱

@echo off set a=00 setlocal EnableDelayedExpansion for %%n in (*.jpg) do ( set /A a+=1 ren "%%n" "Bus!a!.jpg" )1:在記事本中輸入以上程式碼;2:將記事本檔案另存為.

python 資料圖片 批量重新命名

                            python 對資料夾下圖片 批量重新命名   先看一下效果:  

一個shell指令碼將一個檔案超過100KB的檔案複製到另一個資料

指令碼編寫:         (0)建立的指令碼檔案,先用vi命令開啟,瞎寫一些東西 (推薦)         (1)第一行內容是固定的 #!/bin/sh         (2)涉及到的目錄,

python程式2(遞迴查詢某一個資料所有的檔案是否含有某個特定的字串並列印該檔名)

#coding:utf-8 #author:yanjing #date:2016/12/16 #遞迴查詢某一個資料夾下所有的檔案是否含有某個特定的字串 import os import re import string #此函式的作用為遞迴查詢資料夾下所有的檔案 def d

Mac 終端 命令 批量重新命名檔案並修改後綴

新建一個指令碼檔案:reanme.sh 開啟檔案,使用以下程式碼: for i in ./1/*/*.jpg; do mv "$i" "${i%.jpg}.png"; done 作用:

php關於一個資料所有的檔案複製到另一個資料裡面去相同的檔名覆蓋

function copyF($dir,$toDir){       foreach (glob($dir."/*") as $val) {         if(is_dir($val)){           copyF($val,$toDir);         }e