我在Jsoup中遇到了一些URL问题。我一直在搜索有关它的一些信息,但我没有找到如何解决它。 我想解析用UTF-8编写的html代码。我给一个字符串中的jsoup提供了一个url,但是它有一个spansishchar'ñ'。 Jsoup将其解码为UTF-8但它不能很好地工作,因为它将它转换为另一对字符。我该怎么办?
编辑:
我已经解决了问题(我的本地问题)用这样的utf8(ñ= c3b1)中的代码替换'ñ'。 search =España - > Espa +“c3b1”a。感谢所有人。
答案 0 :(得分:2)
你可以试试这样的东西,看看它是否有效吗?
Document doc = Jsoup.connect("blah").get();
doc.outputSettings().charset(Charset.forName("UTF-16"));
编辑:
我认为你说你正在使用UTF-16构建你的URL,但是Jsoup假设你提供的URL是UTF-8。因此,您需要将字符串从UTF-16转换为UTF-8,然后再将其提供给Jsoup。我玩了一些代码,也许它会帮助你,虽然我不确定。我不是说这是答案,但也许它会引导你走上答案的道路。
//I believe this code takes a UTF-8 string, creates a new UTF-16 string.
String url = new String("http://www.google.com/search=España".getBytes(Charset.forName("UTF-8")), Charset.forName("UTF-16"));
您可能需要根据自己的情况进行切换。