GBK 和 UTF8 转码
来源:互联网 发布:消原音软件 编辑:程序博客网 时间:2024/05/17 00:12
GBK 转 UTF8import 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;/** * @author Administrator * */public class GBKtoUTF8ConvertEncoding { public static void main(String[] args) throws Exception { String srcDir = "C:\\WorkPlace\\Ebuy_20141217\\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); } } } }}
UTF8 转 GBK
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;/** * @author Administrator * */public class UTF8toGBKConvertEncoding { public static void main(String[] args) throws Exception {<span style="white-space:pre"></span> String srcDir = "C:\\WorkPlace\\MYS2SH\\src\\com\\test\\cccccc";// List<String> files = new ArrayList<String>(); fetchFileList(srcDir, files, ".java"); for(String fileName : files){ convert(fileName,"UTF-8", fileName, "GBK");// } } 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), "utf8")); 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
- GBK 和 UTF8 转码
- UTF8和GBK
- utf8,GBK,转码,C++
- 将gbk 转码 utf8
- utf8,GBK,转码,C++
- GBK至UTF8转码
- GBK和UTF8编码处理
- UTF8和GBK编码转换
- GBK和UTF8什么区别
- UTF8 和GBK编码转换
- gbk和utf8的区别
- GBK和UTF8的区别
- gbk和utf8的区别
- gbk和utf8的区别
- UTF8和UNICODE和GBK编码
- PHP中GBK和UTF8编码处理
- PHP中GBK和UTF8编码处理
- PHP中GBK和UTF8编码处理
- linux awk命令详解(一) awk语法 awk运算 awk数组
- CGAL计算几何库配置步骤
- [XCode] Frame Rectangle 和 Alignment Rectangle 的区别
- C++11的多线程
- oracle中connect by prior用法,实战解决日期分解问题
- GBK 和 UTF8 转码
- Open edX 简单查错
- Java内部类总结
- [OpenCV]拓展图像边界
- 如何理解闭包
- 在Oracle中使用rank()over()排名的问题
- 京东零售测试之白盒测试实践
- oracle中的null处理的简单理解
- Android LinearLayout和RelativeLayout