gpt4 book ai didi

java - 将 HTML 写入 txt 文件时出现编码错误

转载 作者:行者123 更新时间:2023-12-01 22:17:31 24 4
gpt4 key购买 nike

我正在下载 html 网页的源代码并将其写回 txt 文件。终端上的输出看起来是正确的,但在写入文件并使用 gedit 读取文件内容时,内容看起来像这样:

<^@!^@D^@O^@C^@T^@Y^@P^@E^@ ^@h^@t^@m^@l^@ ^@P^@U ^@B^@L^@I^@C^@ ^@"^@-^@/^@/^@W^@3^@C^@/^@/^@D^@T^@D ^@ ^@X^@H^@T^@M^@L^@ ^@1^@.^@0^@ ^@T^@r^@a^@n^@s^@i^@ t^@i^@o^@n^@a^@l^

我正在使用 BufferedReader 逐行读取文件,如下所示:

URL oracle = new URL("http://example.com");
BufferedReader in = new BufferedReader(
new InputStreamReader(oracle.openStream()));

while ((inputLine = in.readLine()) != null)
{
// appending to get the complete html string
}

然后我使用 PrintWriter 编写内容。

PrintWriter pout = new PrintWriter("output.txt");
pout.write(html); // here html is the appended html string
pout.close();

有人可以帮我解决这个问题吗?

最佳答案

在读取 URL 时,您需要将编码设置为 UTF-8,在写回时,您应该再次提及您的编码是 UTF-8。默认编码可能是您系统的编码,并且可能无法很好地处理 unicode 字符。 InputStreamOutputstream 都支持编码作为参数。因此,您可能需要将 PrintWriter 替换为 OutputStream

关于java - 将 HTML 写入 txt 文件时出现编码错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30705436/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com