2016-12-29 84 views
1

我期待这是非常基本的:HtmlUnit:中国网站编码

从中文网站下载页面时,所有中文字符都显示为“?”在保存的文件(viw java NIO Files.write)中。

我知道中文网页被检索为UTF-8(page.getPageEncoding()返回“UTF-8”),但是在我保存网页时出了点问题。

我的代码如下:

final WebClient webClient = new WebClient(BrowserVersion.FIREFOX_45); 
    webClient.getOptions().setThrowExceptionOnScriptError(false); 
    webClient.getOptions().setTimeout(15000); 
    final HtmlPage page = webClient.getPage(urlNow); 





    pageAsXml = page.asXml(); 

    NioLog.getLogger().debug(page.getPageEncoding()); 





    Files.write(Paths.get(outputPath + File.separator + fileNameTruncated + TXT), pageAsXml.getBytes()); 

回答

1

的答案如下:

  barrayXml = page.asXml().getBytes(Charset.forName("UTF-8")); 



      Files.write(Paths.get(outputPath + File.separator + fileNameTruncated + TXT), barrayXml);