Java实现 递归读取文件 并替换文件中字符子串
注:适用于修改代码中大量重复的变量名称或者字符过滤之类的场景
按道理来讲,直接复制我的代码到两个.java文件,注意引用关系就能跑
实现代码:
package com.tools;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.LinkedList;
import java.util.List;
/**
* 递归读取文件夹内文件,并替换字符串工具类
* @author Dacle
*
*/
public class StrReplace {
/**
* 文件或文件夹路径
*/
private String filePath;
/**
* 递归读取的file对象列表
*/
private List<File> files = new LinkedList<File>();
/**
* 文件编码方式
*/
private String encoding = "UTF-8";
/**
* 文件名选中条件
*/
private String keyStr = ".";
/**
* 文件名过滤条件
*/
private String filterStr = "###";
/**
* 启动ReplaceStr
* @param oldStr 被替换的字符串