使用java在网页中进行字符编码

如何使用java找出网页中的字符编码类型

打开与URL的连接(使用URL.openConnection() ),并解析getContentType()方法返回的内容类型(应该包含charset)。 如果此标头中没有,您可能必须解析HTML内容并查找标签,例如

 

我相信这正是你所需要的。 有代码和解释。 http://nadeausoftware.com/node/73

简要说明如下:

创建一个WebFile类,其中:

  1. 构造函数public WebFile( String urlString )打开一个URLConnection ,读入头文件,包括字符编码。 如果编码不存在,那么您必须从网页本身读取编码。 如果这不存在,你可以尝试使用字符编码检测算法
  2. 方法private Object readStream(int length, java.io.InputStream stream)private Object readStream(int length, java.io.InputStream stream)读取页面数据并使用字符编码return new String( bytes, charset ) ,即return new String( bytes, charset ) ,或返回通过读取创建的字节数组如果没有编码存在或者存在编码exception,则流。
  3. 你有页面内容的getter和setter(例如只调用readStream一次,返回编码)