获取文件编码

  1. 转载自:http://www.iteye.com/topic/540316
  2. 要用到三个包:chardet.jar  antlr.jar cpdetector_1.0.7.jar

  3. import info.monitorenter.cpdetector.io.CodepageDetectorProxy;  
  4. import info.monitorenter.cpdetector.io.JChardetFacade;  
  5.   
  6. import java.io.File;  
  7. import java.nio.charset.Charset;  
  8.   
  9. public class CharacterEnding {  
  10.   
  11.     public static String getFileCharacterEnding(String filePath) {  
  12.   
  13.         File file = new File(filePath);  
  14.   
  15.         return getFileCharacterEnding(file);  
  16.     }  
  17.   
  18.     /** 
  19.      * Try to get file character ending. 
  20.      * </p> 
  21.      * <strong>Warning: </strong>use cpDetector to detect file's encoding. 
  22.      *  
  23.      * @param file 
  24.      * @return 
  25.      */  
  26.     public static String getFileCharacterEnding(File file) {  
  27.   
  28.         String fileCharacterEnding = "UTF-8";  
  29.   
  30.         CodepageDetectorProxy detector = CodepageDetectorProxy.getInstance();  
  31.         detector.add(JChardetFacade.getInstance());  
  32.   
  33.         Charset charset = null;  
  34.   
  35.         // File f = new File(filePath);  
  36.   
  37.         try {  
  38.             charset = detector.detectCodepage(file.toURL());  
  39.         } catch (Exception e) {  
  40.             e.printStackTrace();  
  41.         }  
  42.         if (charset != null) {  
  43.             fileCharacterEnding = charset.name();  
  44.         }  
  45.   
  46.         return fileCharacterEnding;  
  47.     }  

你可能感兴趣的:(File,null)