package CodeConvert;

import Java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.InputStreamReader;

import java.io.OutputStreamWriter;

import java.nio.charset.Charset;

public class GBKtoUTF8 {

//遍历文件

public static void fileList(File file) {

File rootFile = file;

File[] files = rootFile.listFiles();

if (files != null) {

for (File f:files) {

if (!f.isDirectory()) {

codeConvert(f);

}

System.out.println(f.getPath());

fileList(f);//递归调用子文件夹下的文件

}

}

}

//另一种展示方式,自己玩的与实现功能无关

public static void fileList1(File file,int node){

node++;

File rootFile = file;

File[] files = rootFile.listFiles();

if (files != null) {

for(File f:files){

for (int i=0; i < node; i++) {

if (i == node-1) {

System.out.print("|-");

}else System.out.print(" ");

}

System.out.println(f.getName());

fileList1(f, node);

}

}

}

public static void main(String[] args){

File file = new File("/Users/...../GBK");

GBKtoUTF8.fileList(file);

//GBKtoUTF8.codeConvert(file);

}

public static void  codeConvert(File file) {

try{

BufferedReader br = new BufferedReader(new InputStreamReader

(new FileInputStream(file), Charset.forName("GBK")));

StringBuilder sb = new StringBuilder();

String str;

while ((str = br.readLine())!= null) {

sb.append(str);

sb.append("\n");

}

BufferedWriter bw = new BufferedWriter(new OutputStreamWriter

(new FileOutputStream(file),Charset.forName("UTF-8")));

bw.write(sb.toString());

bw.flush();

bw.close();

//br.close();

}catch (Exception e){

e.printStackTrace();

}

}

}

最新文章

  1. MFC双缓存技术代码
  2. [No00007D]2016-面经[上]
  3. iOS RSA加密解密及签名验证
  4. .Net连接数据库-曾,删,改,查(AOD.Net)
  5. [转载]android的消息处理机制(图+源码分析)——Looper,Handler,Message
  6. Nginx Location配置语法介绍、优先级说明
  7. GMT、UTC、PDT 时间是什么?Linux下如何调整时区
  8. Sqlserver 理解子查询
  9. mac os 常用终端软件工具
  10. 【行为型】State模式
  11. GIT分支管理是一门艺术(转)
  12. Android - 支持不同的设备
  13. bootstrap的总结1 - 网格系统
  14. HYBControllerTransitions中文文档
  15. SQL联表查询
  16. 第一个lucene程序,把一个信息写入到索引库中、根据关键词把对象从索引库中提取出来、lucene读写过程分析
  17. Android简易实战教程--第七话《在内存中存储用户名和密码》
  18. JS基础学习2
  19. .net core xss攻击防御
  20. PL/SQL第四章 where子语句

热门文章

  1. bzoj1853幸运数字——容斥原理
  2. Day09: socket网络编程-OSI七层协议,tcp/udp套接字,tcp粘包问题,socketserver
  3. Linux 切换字符界面和图形界面
  4. &lt;正则吃饺子&gt; :关于redis集群的测试demo
  5. 转:JDBC Request使用方法
  6. CI框架中,扩展验证码类。
  7. charles关于手机APP抓包
  8. iOS ipa包重签名
  9. JAVA基础--IO输入输出(File使用)17
  10. 原生js 的ajax封装