一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Java判断文件编码,转换编码及解决中文乱码

时间:2013-09-27 编辑:简简单单 来源:一聚教程网

 代码如下 复制代码

try {
   File file = new File(lrcPath);
 
   // 获取原始文件编码
   CodepageDetectorProxy detector = CodepageDetectorProxy.getInstance();
   detector.add(JChardetFacade.getInstance());
   Charset charset = null;
   charset = detector.detectCodepage(file.toURL());
 
   if (charset != null) {
                                //使用源文件的编码,读取文件
    InputStreamReader bufRead = new InputStreamReader(new FileInputStream(file),charset.name());
    StringBuilder sb = new StringBuilder();
    char[] buffer = new char[2048];
    int len = 0;
    while ((len = bufRead.read(buffer, 0, 2048)) > 0) {
     sb.append(buffer, 0, len);
    }
    String text = sb.toString();
    bufRead.close();
                                //使用UTF-8编码写入文件
    BufferedWriter bufWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file),"UTF-8"));
    bufWriter.write(text);
    bufWriter.flush();
    bufWriter.close();
   }
  } catch (Exception e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }

热门栏目