pg电子游戏软件,类似车行168的软件,单机游戏内购破解平台,今日打牌财神方位查询老黄历

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

時間:2020-10-06 14:54:56 ACCP培訓 我要投稿

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

  經常有些文件中的一些內容需要批量替換,手動的用編輯器替換,只能針對單個文件,涉及多文件的時候,很費時間。下面小編準備了關于Java文本文件批量替換小程序的'方法,提供給大家參考!

  由于有個web項目的字符集編碼原本使用gb2312,現在想改為utf-8編碼,項目下有很多的html,手動去修改相當麻煩,比較懶,于是就寫了如下的java程序對html文件中的charset=gb2312進行替換,替換為 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) {

  // 以過濾器作為參數

  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文本文件批量替換小程序的方法】相關文章:

Java程序學習方法05-29

Java程序編寫記事本方法大全11-08

簡單的Java程序編寫06-02

如何編譯java程序05-29

實現鼠標畫圖的Java程序10-25

微信小程序使用方法11-09

CAD查找和替換的方法05-25

java編寫即時聊天程序11-08

Java程序員必看的書籍07-21

主站蜘蛛池模板: 同心县| 光泽县| 西华县| 富蕴县| 靖安县| 德江县| 邢台市| 澳门| 弋阳县| 花莲市| 电白县| 佛冈县| 清水县| 塔城市| 疏勒县| 花莲市| 宜宾市| 三台县| 黄冈市| 云安县| 台安县| 廊坊市| 澳门| 讷河市| 双城市| 绥化市| 新疆| 恩施市| 榆树市| 曲松县| 夏津县| 大石桥市| 全南县| 台江县| 同江市| 忻城县| 维西| 康马县| 浙江省| 南充市| 临西县|