【ThinkingInJava】57、批量修改文件的名字

/**
* 书本:《Thinking In Java》
* 功能:批量修改文件的名字
* 文件:Restaurant.java
* 时间:2015年5月9日09:20:13
* 作者:cutter_point
*/
package Lesson18IO;

import java.io.File;

public class ChangeName
{
	public void isDirOrNot(File file)
	{
		if(file.isDirectory())
		{
			File[] files1 = file.listFiles();
			for(int i = 0; i < files1.length; ++i)
			{
				this.isDirOrNot(files1[i]); 		//遍历所有的目录
			}
		}

		if(file.isFile())
		{
			//如果不是目录的话,那么我们就准备改名了
			this.change(file);
		}
	}

	public void change(File file)	//改名
	{
		String name = file.getName();		//得到这个文件名
		boolean b = name.endsWith("jsp");
		if(b)	//如果是以jsp结尾的
		{
			String parentDir = file.getParent();
			String fileName = parentDir + File.separator + name.substring(0, file.getName().indexOf(".")) + ".html";
			File newFile = new File(fileName);	//得到文件路径
			if(file.renameTo(newFile))
			{
				System.out.println(name + "  修改成功 " + fileName);
			}
			else
			{
				System.out.println(name + "  修改失败 " + fileName);
			}
		}
	}

	public static void main(String[] args) throws Exception
	{
		File file = new File("C:/Users/feng/Desktop/小型电子商务/struts2_hibernate_bookstore700/WebRoot");
		ChangeName cn = new ChangeName();
		cn.isDirOrNot(file);
	}

}

路径自己可以改,效果我就不展示了,因为我的那个文件已经被我删了!!!

所以运行是没有结果的。

时间: 2024-11-02 23:31:10

【ThinkingInJava】57、批量修改文件的名字的相关文章

批量修改文件夹名称,从此再也不愁了

package practice; import java.io.File; /** * 通过这个程序可以批量修改文件夹的名字 * @author asus * */public class ChangeName { public static void main(String[] args) { //封装数据源 File file = new File("F:\\Java\\历经5年锤炼(史上最适合初学者入门的Java基础视频)"); //获取文件夹下所有文件及文件夹 File[]

bat批量修改图片的名字实现(两种方法)

问题描述: 业务中遇到需要批量修改大量图片的名字. 如下图,需要修改为图片名字"u="之后和","之前的那一串 解决思路1: bat批处理,网上查找相关代码如下: 1 @echo off 2 SetLocal EnableDelayedExpansion 3 4 REM 要查找的文件 5 set ext=*.jpg 6 7 REM 新文件名在原文件名中的起始位置,从0开始 8 set pstart=2 9 10 REM 新文件名在原文件名中的长度 11 set le

一个批量修改文件夹中文件名的命令

1. 只修改当前目录下的文件 [root]# rename -s  \.png  \_iphone.png  * 这个是修改目录下 的所有文件名,加入一个后缀 如: 1.png    ->>>   1_iphone.png 2. 递归修改当前目录下的所有子文件夹 [root]# find ./ -name  "*.png" | xargs  -I {} rename -s \.png  \_iphone.png  {} 如: 2.png    ->>>

c#开发:批量修改文件名称

公司有编辑部同事要求写个小程序,能把几百张图片按照一定的规则命名.根据要求,写了一个小程序.这里的规则是死的,没有考虑很多种要求. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;

shell练习题:使用for循环批量修改文件扩展名

shell练习题:使用for循环批量修改文件扩展名 说明:(1)在linux下批量修改文件名,将下图所示命令中的"_linux"去掉. (2)使用for循环脚本. 思路:本题的基本解题思路,先进行单个文件的改名,然后再用循环实现批量改名,这是比较常规的做法,也可以用rename专业改名工具. 方法一: 说明:使用cut.sed工具 脚本如下: #!/bin/bash cd /test for i in `ls|grep .*.jpg` do mv $i `echo $i |cut -d

用SSH指令批量修改文件夹 文件权限和拥有者

在linux系统下或登录ssh可以批量修改文件权限 wwwroot目录下的所有目录的权限递归设置为755 cd wwwrootfind -type d -exec chmod 755 {} \;或者是find -type d|xargs chmod 755 同样,把目录下的所有文件权限递归地改成644可以这样执行 find -not -type d -exec chmod 644 {} \;或者是find -not -type d|xargs chmod 644 在linux批量修改文件拥有者需

批量修改文件后缀

我们会遇到批量修改文件后缀的情况,比如把 .html 的问件 修改成 .ejs 方法: 1.新建一个txt文件,里面写上 ren *.html *.ejs 2.保存,然后把 .txt 的后缀改成 .bat 3.双击这个 .bat 文件,当前目录下的 所有 html 文件就会变成 ejs 文件 修改前: 修改后: 原文地址:https://www.cnblogs.com/xbblogs/p/8366672.html

Linux下批量修改文件及文件夹所有者及权限

Linux下批量修改文件及文件夹所有者及权限需要使用到两个命令,chmod以及chown 例:对/opt/Oracle/目录下的所有文件与子目录执行相同的权限变更: chmod -R 700 /opt/oracle/ -R参数是递归 处理目录下的所有文件以及子文件夹 700是变更后的权限表示(只有所有者有读和写以及执行的权限) /opt/oracle/ 是需要执行的目录 例:对 /opt/oracle/  目录下的所有文件与子目录执行相同的所有者变更,使所有者修改为oinstall用户组的ora

脚本_批量修改文件后缀名

#!bin/bash#功能:批量修改文件的后缀名,比如: 将.txt文件修改为.doc文件#作者:liusingbon#执行脚本时,需要在脚本名后面添加位置参数(文件后缀名)#例: 脚本名 txt doc (可以将以.txt结尾的文件修改为以.doc结尾)#例: 脚本名 doc jpg (可以将以.doc结尾的文件修改为以.jpg结尾)for i in "ls *.$1"do     mv $i  ${i%.*}.$2done 原文地址:https://www.cnblogs.com/