package replaceCode;
import java.io.*;
public class ReplaceCodeInJs {
private String pathIn = "D:/eclipse/a/";// 包含js文件的根目录
private String oldStr = "gb2312";// 替换前的字符
private String replaceStr = "GBK";// 替换后的字符
private String extention = ".jsp";// 只替换js文件
public void replace() {
replaceAll(pathIn);
}
public void replaceAll(String filePath) {
File file = new File(filePath);
File[] childFiles = file.listFiles();// 找出所有子目录
for (int i = 0; childFiles != null && i < childFiles.length; i++) {
if (childFiles[i].isDirectory()) {// 如果是目录的话,则调用自身
replaceAll(childFiles[i].getPath());
} else if (childFiles[i].getAbsolutePath().toLowerCase()
.endsWith(extention)) {
replaceCode(childFiles[i].getAbsolutePath());
// System.out.println(childFiles[i].getAbsolutePath());//.getName());
}
}
}
public void replaceCode(String path) {
String temp = "";
try {
File file = new File(path);
FileInputStream fis = new FileInputStream(file);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);
StringBuffer buf = new StringBuffer();
while ((temp = br.readLine()) != null) {
temp = temp.replaceAll("(?i)" + oldStr, replaceStr);
buf.append(temp);
buf = buf.append(System.getProperty("line.separator"));
}
br.close();
FileOutputStream fos = new FileOutputStream(file);
PrintWriter pw = new PrintWriter(fos);
pw.write(buf.toString().toCharArray());
pw.flush();
pw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new ReplaceCodeInJs().replace();
}
}
批量替换jsp中的编码声明 GB2312->GBK
最新推荐文章于 2020-11-25 02:49:28 发布