gpt4 book ai didi

java - 使用 DOM Android 从 Xml 读取 UTF8 和 Cp1256

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

我正在使用 DOM 对象读取一个包含阿拉伯语数据的 xml,该数据中除一行以 CP1256 编写外,所有行均以 UTF-8 编写,在解析它时,默认情况下将其解析为 UTF-8 女巫,给出“奇怪的” CP1256 行的字母”,我如何告诉 DOM 解析器将此行解析为 CP1256,请检查 XML:http://alingilalyawmi.org/rss/v2/evangelizo_rss-maa.xml当用notepad++打开它时,你会发现里面的数据是不可读的,直到你将编码更改为cp1256。

最佳答案

如果您知道如何隔离一行,则可以打开一个输入流。然后创建您自己的 Reader 类,包装两个 InputStreamReader,一个配置为 UTF8,另一个配置为 CP1256。然后使用 UTF8 阅读器,直到到达 CP1256 线,切换到另一个阅读器,然后再返回。最后,只需在自定义阅读器类上使用解析器即可。您必须为解析器创建一个输入流。来自文档:

The SAX parser will use the InputSource object to 
determine how to read XML input. If there is a
character stream available, the parser will read
that stream directly, disregarding any text encoding
declaration found in that stream.

关于java - 使用 DOM Android 从 Xml 读取 UTF8 和 Cp1256,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23876423/

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