Я пытаюсь сохранить HtmlDocument (сохраненный с кодировкой UTF-8), который содержит китайский символ ?, используя HtmlEditorKit следующим образом:
try (OutputStreamWriter f = new OutputStreamWriter(fileOutputStream, "UTF-8")) {
htmlEditorKit.write(f, htmlDocument, 0, htmlDocument.getLength());
} catch (BadLocationException e) {
logger.error("Could not save", e);
}
В выходном документе HTML я получаю два 2 байтасимволы (amp # 55361; amp # 57102;) вместо одного 4-байтового символа.Java может понять, какой это символ, комбинируя их оба, но HTML не может.Любое предложение о том, как сохранить его, чтобы HTML-страница могла корректно отображаться?
Вот вывод html:
<html>
<head>
<meta content="text/html" charset="utf-8">
</head>
<body>
<p>��</p>
</body>
</html>