linux用java解析html出现中文乱码问题

一,用java解析html文档遇到的问题

  1. 在windows环境下用BufferedReader读取utf-8的html文件时,没有任何乱码问题,但是在linux环境下读取的时候就出现乱码了,不知道什么问题引起的。
  2. 后来用FileInputStream读取,用new String方式去转换,发现大部门乱码问题解决了,但是由于是1024字节去读的所以存在一个问题,部分字节没读全,就去new String导致乱码问题。

二,解决方式

  1. 个人总结了下问题,应该试html中存在一些特殊字符,导致普通的方式在linux环境下存在转码问题,百度了一下,发现通过jsoup来解析html,会解决此类问题。
  2. 用法如下
//maven配置

	org.jsoup
	jsoup
	1.11.3


//实现代码
File htmlFile = new File("E:/a.html")
StringBuffer htmlSb = new StringBuffer();
Document parse = Jsoup.parse(htmlFile, "utf-8");
htmlSb.append(parse.html());

 

你可能感兴趣的:(linux用java解析html出现中文乱码问题)