文件编码转换工具类
来源:互联网 发布:淘宝福利秀 编辑:程序博客网 时间:2024/06/04 18:36
package zzzz;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.UnsupportedEncodingException;import java.io.Writer;import java.util.ArrayList;import java.util.List;import java.util.regex.Matcher;import java.util.regex.Pattern;public class ConverEncoding {public static void main(String[] args) throws Exception {String srcDir = "D:\\Android\\例子源码\\EnjoyMusic(音乐播放器)\\EnjoyMusic\\src";List<String> files = new ArrayList<String>();fetchFileList(srcDir, files, ".java");for (String fileName : files) {convert(fileName, "GBK", fileName, "UTF-8");}}public static void convert(String oldFile, String oldCharset,String newFlie, String newCharset) {BufferedReader bin;FileOutputStream fos;StringBuffer content = new StringBuffer();try {System.out.println(oldFile);bin = new BufferedReader(new InputStreamReader(new FileInputStream(oldFile), "gbk"));String line = null;while ((line = bin.readLine()) != null) {// System.out.println("content:" + content);content.append(line);content.append(System.getProperty("line.separator"));}bin.close();File dir = new File(newFlie.substring(0, newFlie.lastIndexOf("\\")));if (!dir.exists()) {dir.mkdirs();}fos = new FileOutputStream(newFlie);Writer out = new OutputStreamWriter(fos, newCharset);out.write(content.toString());out.close();fos.close();} catch (UnsupportedEncodingException e) {e.printStackTrace();} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}public static void fetchFileList(String strPath, List<String> filelist,final String regex) {File dir = new File(strPath);File[] files = dir.listFiles();Pattern p = Pattern.compile(regex);if (files == null)return;for (int i = 0; i < files.length; i++) {if (files[i].isDirectory()) {fetchFileList(files[i].getAbsolutePath(), filelist, regex);} else {String strFileName = files[i].getAbsolutePath().toLowerCase();Matcher m = p.matcher(strFileName);if (m.find()) {filelist.add(strFileName);}}}}}
0 0
- 文件编码转换工具类
- 工具类 编码转换
- java读取文件并获得文件编码,转换为指定编码的工具类代码
- java读取文件并获得文件编码,转换为指定编码的工具类代码
- Java版文件编码转换工具
- Java native2ascii工具 properties文件编码转换
- Java native2ascii工具 properties文件编码转换
- C# Winform 文件编码批量转换工具
- FilesCodingConvert--批量文件编码格式转换工具
- unicode编码转换工具类
- Java编码转换工具类
- Java 编码转换工具类(转载)
- C++ 字符编码转换工具类
- 中文编码转换工具
- 字符编码转换工具
- js编码转换工具
- c#编码转换工具
- EncodeConvert编码转换工具
- Android 计算控件尺寸
- android图片处理方法(不断收集中)
- 两幅图像的线性叠加
- LeetCode-Median of Two Sorted Arrays
- C 语言部分实现面向对象的继承特性
- 文件编码转换工具类
- 若干关于 字符串 的小算法
- Linux进程后台运行 nohup
- 黑马程序员 【】java学习之路——GUI开始简析
- C++标准库string类型
- Unity Mathf 数学运算(C#)
- openwrt DTSI文件解译
- iframe自适应高度加载脚本,解决不能使用onload事件问题(兼容)
- Remove Duplicates from Sorted Array