示例#1
0
 static {
   codepageDetectorProxy.add(
       new ParsingDetector(
           false)); // ParsingDetector可用于检查HTML、XML等文件或字符流的编码,构造方法中的参数用于指示是否显示探测过程的详细信息,为false不显示。
   codepageDetectorProxy.add(
       JChardetFacade
           .getInstance()); // JChardetFacade封装了由Mozilla组织提供的JChardet,它可以完成大多数文件的编码
                            // 测定.比如下面的ASCIIDetector、UnicodeDetector等
   codepageDetectorProxy.add(ASCIIDetector.getInstance()); // ASCIIDetector用于ASCII编码测定
   codepageDetectorProxy.add(UnicodeDetector.getInstance()); // UnicodeDetector用于Unicode家族编码的测定
 }
示例#2
0
 /**
  * 使用Cpdetector检测文件编码
  *
  * @param file
  * @return
  */
 public static Charset getFileEncode(File file) {
   try {
     CodepageDetectorProxy detector = CodepageDetectorProxy.getInstance();
     detector.add(new ParsingDetector(false));
     detector.add(JChardetFacade.getInstance());
     detector.add(ASCIIDetector.getInstance());
     detector.add(UnicodeDetector.getInstance());
     java.nio.charset.Charset charset = null;
     charset = detector.detectCodepage(file.toURI().toURL());
     return charset;
   } catch (Exception ex) {
     ex.printStackTrace();
     return null;
   }
 }