`
greemranqq
  • 浏览: 972137 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

JAVA 文件批量修改

阅读更多

今天,有人想把项目里面所有的Root文件,里面的文本含有sj 的全部变成FCX,由于文件个数很多,所以写了小例子一次改变。

 

写得很简单,其中涉及安全,文本大小,编码等都没做处理,修改也写得比较死。

 

其次:如果要批量修改文件名,批量删除,批量移动位置等等 操作类似,都可以进行改变。

 

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class Test {
	
	public static void main(String[] args) {
		String root = "D:/igo";
		dealFile(root);
	}
	
	// 改变的文件地址,以及总数
	static List<String> list = new ArrayList<String>();
	public static void dealFile(String rootPath){
		list = getFileDirectory(rootPath);
		int count = 0;
		for(int i = 0;i<list.size();i++){
			rootPath = list.get(i);
			writeFile(rootPath,readFile(rootPath));
			count = i;
			System.out.println("修改的文件有:"+rootPath);
		}
		System.out.println("总数:"+count);
	}
	
	// 获得文本数据
	public static String readFile(String filePath){
		BufferedReader br = null;
		StringBuilder sb = new StringBuilder();
		try {
			br = new BufferedReader(new FileReader(filePath));
			String str = null;
			while( (str = br.readLine())!=null && !"".equals(str)){
				str = str.replace("sj", "FCX");
				sb.append(str);
				sb.append("\r\n");
			}
			
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}finally{
			try {
				br.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		return sb.toString();
	}
	// 从写文本数据
	public static void writeFile(String filePath,String context){
		BufferedWriter bw = null;
		try {
			bw = new BufferedWriter(new FileWriter(filePath));
			bw.write(context);
		} catch (IOException e) {
			e.printStackTrace();
		}finally{
			try {
				bw.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}
	// 获得需要更改的文件目录
	public static List<String> getFileDirectory(String rootPath){
		File dir = new File(rootPath);
		File[] files = dir.listFiles();
		String filePaht = null;
		for(File f : files){
			if(f.isDirectory()){
				// 迭代文件目录
				getFileDirectory(f.getAbsolutePath());
			}else if("Root".equals(f.getName())){
				// 获得需要改的文件名字
				filePaht = f.getAbsolutePath();
				// 路径是xx\xx 格式,转换成xx/xx 格式
				filePaht = filePaht.replace("\\", "/");
				list.add(filePaht);
			}
		}
		return list;
	}
}

 

希望更多的和我一样的新手,学习,提出更多的要求,我逐渐完善

0
3
分享到:
评论
3 楼 greemranqq 2013-06-15  
谢谢,我去看看UE工具。
这个是拷贝出来的东西,一个压缩文件。具体的是 一个才入职不久的朋友,老板要求这么做的,估计也是为了考验能力吧
2 楼 lunece 2013-06-08  
我们一般用UE批量替换文件内容,那个比较方便和便捷。
1 楼 Ethan.Lu 2013-06-07  
如果是修改项目文件,那么在eclipse里面用Ctrl+h直接替换就行了吧

相关推荐

    Java文件批量处理程序

    Java 文件批量处理程序 Java 文件批量处理程序是使用 Java 语言开发的一款功能强大且实用的文件批量处理工具。下面我们将对该程序的主要功能和使用方法进行详细的介绍。 程序概述 Java 文件批量处理程序是一款...

    java批量修改指定文件夹下多级文件编码格式

    经常碰到文件编码格式不一致导致一堆问题,想在linux上批量修改文件夹下的文件编码,操作太麻烦,花了一点时间写了个java程序来操作,用着非常方便,详情如下: 在FileEncodeTranslate类中,修改一下源文件夹路径,...

    android apk 反编译java文件对应的资源批量修改(更改为R.java文件中的R.string.name格式)

    Android的apk文件反编译后,甚多的资源...(2)从反编译出的文件夹中,找到public.xml文件,依据代码说明执行代码,可以将反编译出的java文件引用的资源数字重新更改为R.type.name格式,使得java文件资源引用重新关联。

    java开发的批量修改文件名称工具

    标题 "java开发的批量修改文件名称工具" 暗示了这是一个使用Java编程语言开发的实用程序,专门设计用于批量更改文件的名称。在IT领域,这样的工具对于处理大量文件时进行自动化重命名非常有用,比如整理数据集、更新...

    java实现批量更改照片的名字

    在IT行业中,编程任务经常涉及到文件操作,例如批量处理文件,比如本题中提到的“批量更改照片的名字”。Java作为一种广泛使用的编程语言,提供了丰富的API来处理文件和目录。在这个场景下,我们可以利用Java的`java...

    java 批量更改文件类型,替换文件内容

    java批量修改文件格式,文件内容,修改过后可以修改想要的任何文件格式

    java实现批量递归修改目录下所有文件

    java实现批量递归修改目录下所有文件

    Java实现批量向mysql写入数据的方法

    此外,本文还提供了一些相关的学习资源,例如《Java+MySQL数据库程序设计总结》、《Java数据结构与算法教程》、《Java文件与目录操作技巧汇总》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总》,这些资源...

    Java实现批量修改文件名称

    Java实现批量修改文件名称 可以批量修改文件夹下面所有的文件的名称,

    批量对xml文件指定内容的更改

    1.实现了对文件夹中xml文件的筛选。 2.实现了对xml文件的批量更改。 3.正则表达式匹配具体的内容,修改并保存。

    文件批量重命名 文件标签批量修改 文件批量改名 绿色免安装

    本文将详细介绍如何使用"文件批量重命名"软件来实现这一目标,特别是针对批量重命名和标签批量修改的功能。 批量重命名是文件管理中的一个重要功能,尤其对于那些需要整理大量文件的用户来说。这个软件能够帮助我们...

    java批量修改文件名

    总的来说,Java批量修改文件名涉及文件I/O操作,需要理解`java.io`和`java.nio.file`包的相关API,同时考虑异常处理和潜在的并发问题。结合第三方库或工具,可以提高代码的可读性和可维护性,满足更复杂的业务需求。

    文件批量重命名java源代码

    总之,这个Java源代码项目提供了一个实用的文件批量重命名工具,并且代码结构清晰,注释详尽,是学习Java文件操作的一个良好实例。通过阅读和理解这个代码,开发者可以掌握如何在Java中有效地管理和操作文件,这对于...

    制作的定时多次批量上传本地文件到阿里云OSS存储,Java脚本后端服务自动执行

    自己制作的可按需求定时每分钟、每小时、每天多次批量上传本地文件到阿里云OSS存储,Java脚本后端服务自动执行,只需更改账号AccessKey和指定目录即可,递归扫描上传指定目录文件,整体流程有不懂环节可私信我

    JAVA爬虫批量下载网页文件

    然后将下载地址放到linux系统里在控制台输入一条命令就可以进行批量下载(还可以直接调用浏览器的接口直接下载,这个可以自行修改),代码有注释具体目的解压后有个txt文件有简单介绍。代码不是完全原创的,也是自己...

    文件批量修改时间戳 文件批量修改创建时间 绿色免安装

    "文件批量修改时间戳 文件批量修改创建时间 绿色免安装"这个标题和描述指出,我们有一个工具能够帮助我们实现这个功能,而且它是一个绿色软件,无需安装即可使用,方便快捷。 首先,我们要理解什么是时间戳。在...

    批量修改文件编码软件

    这一步骤可能涉及到设置文件过滤条件,例如只修改.txt或.java文件。一旦找到目标文件,用户只需点击“一键修改”,软件便会自动将这些文件的编码格式转换为预设的目标编码,如UTF-8无BOM格式。 批量修改过程中,...

    自己用JAVA写的批量修改文件扩展名小程序

    这个程序可能是为了方便用户在大量文件中统一更改扩展名,比如将所有.txt文件批量更改为.docx。 描述中提到“经过本人测试,只要安装JDK1.7,该程序双击可运行”,这说明该程序依赖于Java Development Kit(JDK)的...

    文件内容批量修改的工具(原代码) .rar

    标题中的“文件内容批量修改的工具(原代码) .rar”指的是一个压缩文件,其中包含了一个用于批量修改文件内容的工具的源代码。这通常是一个程序员或开发者为了方便处理大量文件,比如文本文件、配置文件等,而创建的...

    文件批量重命名工具(Java实现)

    标题中的“文件批量重命名工具(Java实现)”是指一个使用Java编程语言开发的应用程序,它的主要功能是对一组文件进行批量重命名操作。在IT领域,批量重命名文件是一项常见的需求,尤其对于需要整理大量文件的用户...

Global site tag (gtag.js) - Google Analytics