牛骨文教育服务平台(让学习变的简单)
博文笔记

java 使用CharsetDetector检测文件的编码方式

创建时间:2012-03-13 投稿人: 浏览次数:1569

DEMO1:从服务器上读取文件的内容   判断文件编码

URL url = new URL(getUrl);

  HttpURLConnection httpConnection =  (HttpURLConnection) url.openConnection();
             InputStream in = httpConnection.getInputStream(); 
             InputStream tempStream = url.openStream();
      CharsetDetector charDect = new CharsetDetector();
    String[] unicodeSet = charDect.detectChineseCharset(tempStream);
    BufferedReader bufferedReader = null;
    if(unicodeSet.length>0)
    bufferedReader = new BufferedReader(new InputStreamReader(in,unicodeSet[0]));
    else
    bufferedReader = new BufferedReader(new InputStreamReader(in,"gb2312"));
             StringBuffer temp = new StringBuffer();
             String line = bufferedReader.readLine();
             while (line != null) {
             temp.append(line).append(" ");
             line = bufferedReader.readLine();
             }
             bufferedReader.close();

            lrc= temp.toString();

DEMO2:判断本地文件编码

public static void main(String[] args){
CharsetDetector charDect = new CharsetDetector();
File f = new File("F:/demo/a.txt");
try {
String[] probableSet = charDect.detectChineseCharset(f.toURL().openStream());
for (String charset : probableSet){
           System.out.println(charset);
       }
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

封装后的jar包下载地址 http://codeinplatform.googlecode.com/files/CharsetDetector.jar 

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。