问题描述:
将nutch爬的网页源代码存在mysql中,网页编码为gb2312的网页中文乱码,其他编码暂未发现问题。因为nutch对爬下的网页源代码content不作任何处理,仅仅保存,而我的mysql编码设置的为utf-8,所以会显示乱码。
现在需要处理网页源代码,取出指定数据,那么java程序如何将gb2312中文乱码的网页源代码转化为非乱码。
解决:
其实采用ResultSet的getBytes方法即可。
public void getResoucePage() throws Exception{
String sql = "select * from webpage";
ResultSet rs = stmtSelect.executeQuery(sql);
while(rs.next()){
byte[] pageByte = rs.getBytes("content");
String pageString = new String(pageByte, "gb2312");
getPageInfo(pageString);
}
rs.close();
stmtSelect.close();
conn.close();
}
说明:采用字节读取网页源代码,再指定编码为gb2312解码即可得到非乱码的网页源代码,剩下想怎么处理就怎么处理了。
(转载请注明,更多详见:http://blog.csdn.net/hwwn2009/article/details/41960043)