久久久久无码精品,四川省少妇一级毛片,老老熟妇xxxxhd,人妻无码少妇一区二区

Java文本文件批量替換小程序的方法

時(shí)間:2024-10-27 12:03:16 ACCP培訓(xùn) 我要投稿
  • 相關(guān)推薦

Java文本文件批量替換小程序的方法

  經(jīng)常有些文件中的一些內(nèi)容需要批量替換,手動(dòng)的用編輯器替換,只能針對(duì)單個(gè)文件,涉及多文件的時(shí)候,很費(fèi)時(shí)間。下面小編準(zhǔn)備了關(guān)于Java文本文件批量替換小程序的方法,提供給大家參考!

  由于有個(gè)web項(xiàng)目的字符集編碼原本使用gb2312,現(xiàn)在想改為utf-8編碼,項(xiàng)目下有很多的html,手動(dòng)去修改相當(dāng)麻煩,比較懶,于是就寫了如下的java程序?qū)tml文件中的charset=gb2312進(jìn)行替換,替換為 charset=utf-8。(注:Dreamweaver 可以批量替換)

  代碼如下:

  import java.io.BufferedReader;

  import java.io.BufferedWriter;

  import java.io.File;

  import java.io.FileFilter;

  import java.io.FileInputStream;

  import java.io.FileOutputStream;

  import java.io.IOException;

  import java.io.InputStreamReader;

  import java.io.OutputStreamWriter;

  import java.io.PrintWriter;

  import java.io.UnsupportedEncodingException;

  public class ContextReplace {

  private static String srcStr = "charset=gb2312";

  private static String desStr = "charset=utf-8";

  private static String srcDir = "f:\\test";

  private static FileFilter filter = new FileFilter() {

  public boolean accept(File pathname) {

  // 只處理:目錄 或是 .html文件

  if (pathname.isDirectory()

  || (pathname.isFile() && pathname.getName().endsWith(

  ".html"))) {

  return true;

  } else {

  return false;

  }

  }

  };

  public static void readDir(File file) {

  // 以過(guò)濾器作為參數(shù)

  File[] files = file.listFiles(filter);

  for (File subFile : files) {

  // 處理目錄

  if (subFile.isDirectory()) {

  readDir(subFile);

  }

  // 處理文件

  else {

  System.err.println(" 源文件:\t" + subFile.getAbsolutePath());

  System.err.println("---------------------------");

  try {

  replace(subFile.getAbsolutePath(), srcStr, desStr);

  } catch (UnsupportedEncodingException e) {

  e.printStackTrace();

  } catch (IOException e) {

  e.printStackTrace();

  }

  }

  }

  }

  public static void replace(String infilename, String from, String to)

  throws IOException, UnsupportedEncodingException {

  File infile = new File(infilename);

  BufferedReader in = new BufferedReader(new InputStreamReader(

  new FileInputStream(infile), "utf-8"));

  File outfile = new File(infile + ".tmp");

  PrintWriter out = new PrintWriter(new BufferedWriter(

  new OutputStreamWriter(new FileOutputStream(outfile), "utf-8")));

  String reading;

  while ((reading = in.readLine()) != null) {

  out.println(reading.replaceAll(from, to));

  }

  out.close();

  in.close();

  infile.delete();

  outfile.renameTo(infile);

  }

  public static void main(String[] args) {

  File srcFile = new File(srcDir);

  readDir(srcFile);

  srcFile = null;

  }

  }

【Java文本文件批量替換小程序的方法】相關(guān)文章:

Java程序編寫記事本方法大全06-22

如何編譯java程序09-28

微信小程序使用方法06-08

Excel查找和替換方法大全08-16

實(shí)現(xiàn)鼠標(biāo)畫圖的Java程序06-22

java編寫即時(shí)聊天程序08-26

Java程序開發(fā)與運(yùn)行環(huán)境06-21

Java枚舉的常用方法10-05

Java線程同步的方法10-25

sun認(rèn)證java程序員07-20