10-01
16

从http协议看无法获取网页charset的原因

connection.getContentType();

  这个需要服务器设置了 ContentType才可以,这个数据在文件头里面,而不是在文件的主体(也就是你看到的html)里面。

  所以检测页面类型需要分3步,如果这一步不行,则用下一个

  1 看header里面的ContentType,也就是你用的那个方法

  2 看 html 里面的 ContentType ,也就是解析html页面

  3 对html数据进行自动评估,类似于it里面的自动检测编码类型。

  一段典型的返回信息的Header数据

  HTTP/1.1 200 OK

  Date: Mon, 01 Sep 2008 23:13:31 GMT

  Server: Apache/2.2.4 (Win32) mod_jk/1.2.26

  Vary: Host,Accept-Encoding

  Set-Cookie: JAVA2000_STYLE_ID=1; Domain=www.java2000.net; Expires=Thu, 03-Nov-2011 09:00:10 GMT; Path=/

  Content-Encoding: gzip

  Transfer-Encoding: chunked

  Content-Type: text/html;charset=UTF-8

  <html>

  。。。。从这里开始是数据的本体



文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相关日志:
评论: 0 | 引用: 0 | 查看次数: 207
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭