利用第三方的Jar包判别指定文本编码

11月5日
利用第三方的Jar包判别指定文本编码
原文请查看:http://www.iteye.com/topic/108540,作者是hdwangyi 。

他在帖子中贴出了一段代码来判断一个文本是UTF-8编码的,思路是读取一个txt文件,截取字符流的前3个字符(即标示位),判断是否与UTF-8的格式的标示位一致。

import java.io.*;

public class TestText {
public static void main(String args[]){
File file = new File("C:/1.txt");

try{
InputStream stream = new FileInputStream(file);
byte[] byteArray = new byte[3];

stream.read(byteArray);
stream.close();

if (byteArray[0] == -17 && byteArray[1] == -69 && byteArray[2] == -65)
System.out.println("UTF-8");
else
System.out.println("可能是其他的编码");

}
catch(Exception e){
e.printStackTrace();
}
}
}

但显然这种方式有很大的局限性,而且需要对文件编码有着一定的了解。于是作者用到了第三方的jar包cpdetector,下载地址http://cpdetector.sourceforge.net/。如何在Eclipse中导入jar包,请看http://blog.csdn.net/justinavril/archive/2008/08/07/2783182.aspx。这个jar包内的类和方法能够准确判断文件的编码格式。

import cpdetector.io.*;
import java.io.*;
import java.nio.charset.*;

public class PageCode {
public static void main(String args[]){

CodepageDetectorProxy detector = CodepageDetectorProxy.getInstance();
detector.add(JChardetFacade.getInstance());

Charset charset = null;

File f = new File("C:/1.txt");

try {
charset = detector.detectCodepage(f.toURL());
}
catch (Exception e) {
e.printStackTrace();
}
if(charset!=null){
System.out.println(f.getName()+"编码是:"+charset.name());
}else
System.out.println(f.getName()+"未知");
}
}

1.txt编码是:GB2312
可以把main函数的相关内容改成一个方法重用,从而达到自由判断文件编码的目的。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Maven是一个项目管理工具,它提供了一种简单的方式来管理项目的依赖关系。在使用Maven进行项目开发的过程中,我们经常会遇到引入第三方jar包的需求,从而为项目提供所需的功能。 Maven提供了一种批量安装第三方jar包的功能,可以通过在项目的pom.xml文件中声明依赖关系来实现。首先,我们需要找到所需的第三方jar包的Maven坐标,这通常包括groupId、artifactId和version三个属性。 在pom.xml文件中,我们可以通过在dependencies节点下添加多个dependency节点来声明多个第三方jar包的依赖关系。在每个dependency节点内,我们需要填写对应第三方jar包的groupId、artifactId和version属性。 当我们保存并关闭pom.xml文件后,Maven会自动从中央仓库或私有仓库中下载并安装所需的第三方jar包。这样,我们就可以在项目中直接引用这些jar包,并使用其中的类和方法。 除了在pom.xml文件中声明第三方jar包的依赖关系外,我们还可以使用Maven命令进行批量安装。通过执行"mvn install"命令,Maven会按照pom.xml文件中所声明的依赖关系,自动下载并安装所有的第三方jar包。 总之,Maven是一个非常方便的批量安装第三方jar包工具,通过在项目的pom.xml文件中声明依赖关系,我们可以轻松地管理和安装所需的第三方jar包。这样,我们可以快速、高效地开发自己的项目,节省了手动下载和安装第三方jar包的时间和努力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值