`
jinyanhui2008
  • 浏览: 312717 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

转自CSDN以作备份,使用java获取文档的编码格式

    博客分类:
  • Java
阅读更多

package com.util.mail; import java.io.File; import java.nio.charset.Charset; import cpdetector.io.CodepageDetectorProxy; import cpdetector.io.JChardetFacade; /** * 需要借助cpdetector jar包下载地址:http://d.download.csdn.net/down/1815149/wnjok,或者下载我的附件 */ public class CharacterEnding { public static void main(String[] args) { String encoding = CharacterEnding.getFileCharacterEnding("Sty.xml"); System.out.println("encoding = " + encoding); } public static String getFileCharacterEnding(String filePath) { File file = new File(filePath); return getFileCharacterEnding(file); } public static String getFileCharacterEnding(File file) { String fileCharacterEnding = "UTF-8"; cpdetector.io.CodepageDetectorProxy detector = CodepageDetectorProxy.getInstance(); detector.add(JChardetFacade.getInstance()); Charset charset = null; try { charset = detector.detectCodepage(file.toURL()); } catch (Exception e) { e.printStackTrace(); } if (charset != null) { fileCharacterEnding = charset.name(); } return fileCharacterEnding; } }

 

 

如果用io流读文件可以使用

 

FileInputStream fiss = new FileInputStream(sSaveFile);
InputStreamReader fis = new InputStreamReader(fiss, stringCharSet);
StringBuffer sb = new StringBuffer();
BufferedReader br = new BufferedReader(fis);
String line = br.readLine();
while(line!=null && line.length()>0){
     sb.append(line);
     line = br.readLine();
}

 这样子读出的字符串就不是乱码了

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics