java - 如何检测网页的字符集

标签 java encoding character-encoding html

我只想获取java语言的网页源码,我只想获取正确编码类型的内容。到目前为止,我能够获取网页的内容。但对于某些网页,内容带有荒谬的字符。所以我需要检测该网页的字符集。

根据我的一些研究,我发现有一个 jChardet 库可以执行此操作。但是我无法将它导入到我的项目中。有人可以帮帮我吗?

顺便说下下面的代码是读取网页内容的代码

  StringBuilder builder = new StringBuilder(); 
  InputStream is = fURL.openStream();
  BufferedReader buffer = null;
  buffer = new BufferedReader(new InputStreamReader(is, encodingType));

  int byteRead;
  while ((byteRead = buffer.read()) != -1) {
    builder.append((char) byteRead);
  }
  buffer.close();  

  return builder;

最佳答案

读取 HTTP 响应的 Content-Type header ,这是获取字符集的最佳方式。仅在您别无选择时才应用猜测 - 您确实如此。

关于java - 如何检测网页的字符集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8636215/

相关文章:

Java HTTP PUT 与 Java 中的摘要式身份验证

java - Scala 闭包和 Java 8 闭包之间的兼容性

Javascript编码问题

java - 您将如何更改文件中的单个字节?

java - 如何使用 Jackson 将 JSON 反序列化为忽略 key 的对象?

linux - Linux 上的 UTF8 问题

python - 用 python 编码 URL 的百分比

html - 无法将中文字符发布到我的搜索表单

c# - 读取 XML 时出现奇怪的 UTF-8 编码问题,在 C# 中写入结果

javascript - 如何在 JavaScript 中将 unicode 字符记录到控制台?