Nutch中的乱码完全解决方案

来源:互联网 发布:帝国cms 全站搜索模板 编辑:程序博客网 时间:2024/06/08 09:34

页面乱码与Tomcat的配置有关。

<Connector port=”8080″
maxThreads=”150″ minSpareThreads=”25″ maxSpareThreads=”75″
enableLookups=”false” redirectPort=”8443″ acceptCount=”100″
connectionTimeout=”20000″ disableUploadTimeout=”true”
URIEncoding=”UTF-8″ useBodyEncodingForURI=”true” />

缓存乱码的解决:修改Cache.jsp中的代码行

 

    String encoding = (String) metaData.get("CharEncodingForConversion");

    if (encoding != null) {

      try {

        content = new String(bean.getContent(details), encoding);

      }

      catch (UnsupportedEncodingException e) {

        // fallback to windows-1252

        content = new String(bean.getContent(details), "windows-1252");

      }

    }

    else

      content = new String(bean.getContent(details));

  }

%>

 

 

Content =new String(bean.getContent(details),"GBK");

注意:经过以上处理,部分UTF-8的页面依然会出现乱码。要想彻底解决,需要将Content 内容先做判断,如果Meta标签中有charset="utf-8"标志,则

Content =new String(bean.getContent(details),"utf-8");

经过以上处理,基本上不会有乱码的缓存页面存在。

原创粉丝点击