[java]借助java.io.File类,完成文件批量改名
列出某目录下的所有文件,将文件改名,借助java.io.File一个类就可以完成。大家可以发现,代码中的具体方法都是File一个类的。
另外要注意的是,File的全路径名,路径是一致的,父路径其实是文件所在的目录名,名称则是单独的文件名,具体如下:
File.getAbsolutePath());// 全路径文件名 File.getPath());// 全路径文件名,和getAbsolutePath一致 File.getParent());// 单纯路径 File.getName());// 单纯文件名
这个在刚接触时容易混淆,需要小心。
源码:
package com.hy.expired;
import java.io.File;
import org.apache.log4j.Logger;
/**
* 将folder指定目录下的JPG文件批量改名
* @author horn1
*
*/
public class BatchRenamer {
private static Logger log = Logger.getLogger(BatchRenamer.class);
public static void main(String[] args) {
addPrefix2EveryFile();
}
/**
* 将全部jpg文件按数字改名
*/
private static void renameToNumber() {
File folder = new File("D:\\temp");
File[] files = folder.listFiles();
for (int i = 0; i < files.length; i++) {
if (files[i].isFile() && files[i].getName().endsWith(".jpg")) {
String oldFilename=files[i].getAbsolutePath();
String newFileName=files[i].getParent()+File.separator+""+i+".jpg";
files[i].renameTo(new File(newFileName));
log.info("文件已从原名:'"+oldFilename+"' 修改成了新名:'"+newFileName+"'.");
}
}
}执行效果:
/**
* 给每个文件名加上前缀
*/
private static void addPrefix2EveryFile() {
File folder = new File("D:\\temp");
File[] files = folder.listFiles();
for (int i = 0; i < files.length; i++) {
if (files[i].isFile() && files[i].getName().endsWith(".jpg")) {
String oldFilename=files[i].getAbsolutePath();
String newFileName=files[i].getParent()+File.separator+"冬月枫"+files[i].getName();
files[i].renameTo(new File(newFileName));
log.info("文件已从原名:'"+oldFilename+"' 修改成了新名:'"+newFileName+"'.");
}
}
}
执行效果:
}
--END-- 2019年11月3日09:40:04
[java]借助java.io.File类,完成文件批量改名的更多相关文章
- Batch File Rename Utility(文件批量改名软件) 1.1.4231
软件名称: Batch File Rename Utility(文件批量改名软件) 1.1.4231.23098 软件语言: 英文 授权方式: 免费软件 运行环境: Win7 / Vista / Wi ...
- Java 之 File类(文件操作)
一.概述 java.io.File 类是文件和目录路径名册抽象表示,主要用于文件和目录的创建.查找和删除等操作. File类是一个与系统无关的类,任何的操作系统都可以使用这个类中的方法. 路径问题: ...
- 第8章 File I/O,File类操作文件的属性
1.文件 1.1.什么是文件? 答:文件可认为是相关记录或放在一起的数据的集合 1.2.文件- -般存储在哪里? 答: 磁盘,硬盘,文件夹 1.3.JAVA程序如何访向文件属性? JAVA API:i ...
- java.io.File类
java.io.File类 1.凡是与输入.输出相关的类.接口等都定义在java.io包下 2.File是一个类.能够有构造器创建其对象.此对象相应着一个文件(.txt .avi .doc .ppt ...
- java.io.File类操作
一.java.io.File类 String path="E:/222/aaa";//路径 String path1="aaa.txt"; File file= ...
- 33.JAVA编程思想——JAVA IO File类
33.JAVA编程思想--JAVA IO File类 RandomAccessFile用于包括了已知长度记录的文件.以便我们能用 seek()从一条记录移至还有一条:然后读取或改动那些记录. 各记录的 ...
- 使用File类操作文件或目录的属性
在学I/O流之前,我先总结一下使用File类操作文件或目录的属性. package com.File; import java.io.File; import java.io.IOException; ...
- 九:File类,文件的操作
File的常用方法:
- C#中File类的文件操作方法详解
File类,是一个静态类,主要是来提供一些函数库用的.静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和打开一个文件.File类方法的参量很多时候都是路径path.F ...
随机推荐
- sql语句查询结果中添加自增列
SELECT Row_Number() over ( order by getdate() ) as init , * FROM 表名
- SRX550路由器缓存满了无法在web页面操作解决方法
SRX550路由器缓存满了无法在web页面操作解决方法 首页出现下图为满的标志,我这个文档就是解决这中情况,让web页面可以操作的 1. 打开命令行,输入用户密码,进入路由器 注意:这里使用te ...
- What Linux bind mounts are really doing
Lots of Unixes have some form of 'loopback' mounts, where you can mount a bit of an existing filesys ...
- 【前端】低版本IE浏览器访问网站一片空白
最近在客户那里,发现一个奇葩的问题,系统上IE浏览器访问网站一片空白,显示无法访问. 但是相同的网站系统,在我们的电脑上又可以访问且IE浏览器版本相同,没法只有,装虚拟模拟客户环境复现一下了. 发现在 ...
- 挖矿病毒watchbog处理过程
1 挖矿病毒watchbog处理过程 简要说明 这段时间公司的生产服务器中了病毒watchbog,cpu动不动就是100%,查看cpu使用情况,发现很大一部分都是us,而且占100%左右的都是进程wa ...
- python3 matplotlib
一.matplotlib数据可视化 1.https://matplotlib.org/ 2.figure图形窗口:figsize窗口大小,label轴标签:title标题:lim限制:plot绘图:s ...
- Java字节码文件结构剖析
今天起开启JVM的新的知识学习篇章----Java的字节码,那学习Java字节码有啥用呢?我们知道Java是跨平台的一门语言,编写一次到处运行,而支撑着这个特性的根基为两点:JVM和.class字节码 ...
- Procomm Plus 与ASPECT脚本语言在基于远程终端设备上的测试应用
产测 ---------------------------------------------------- 原文:http://www.bixuanzl.com/20180801/1084478. ...
- 你不知道的JavaScript LHS 和 RHS 查找
今天在学习JavaScript的相关知识时接触到了 LHS(Left Hand Side)和 RHS(Right Hand Side)两种对变量查找的方法,之所以JavaScript要查找变量,那就先 ...
- HDU 3824/ BZOJ 3963 [WF2011]MachineWorks (斜率优化DP+CDQ分治维护凸包)
题面 BZOJ传送门(中文题面但是权限题) HDU传送门(英文题面) 分析 定义f[i]f[i]f[i]表示在iii时间(离散化之后)卖出手上的机器的最大收益.转移方程式比较好写f[i]=max{f[ ...