gpt4 book ai didi

java - 使用 javax.xml.stream.XMLStreamReader 时如何启用非 IANA 编码

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:57:23 25 4
gpt4 key购买 nike

我正在使用 javax.xml.stream.XMLStreamReader 来解析 XML 文档。不幸的是,我正在解析的一些文档使用非 IANA 编码名称,例如“macroman”和“ms-ansi”。例如:

<?xml version="1.0" encoding="macroman"?>
<foo />

这会导致解析失败并出现异常:

javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,42]
Message: Invalid encoding name "macroman".

有什么方法可以为我的 XMLStreamReader 提供自定义编码处理程序,以便我可以通过支持我需要的编码来增强它?

最佳答案

您可以使用转换器包装输入流,将非标准字符集替换为 XMLStreamReader 能够理解的等效字符集。

参见 Filter (search and replace) array of bytes in an InputStream

关于java - 使用 javax.xml.stream.XMLStreamReader 时如何启用非 IANA 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50750765/

25 4 0