gpt4 book ai didi

java - Java 中的 Sax 解析器编码

转载 作者:行者123 更新时间:2023-11-29 06:01:44 24 4
gpt4 key购买 nike

我对 sax 解析器和编码文本有疑问。我尝试以这种方式解析 ISO-8859-2 ( http://www.sbazar.cz/rss.xml?keyword=pes) 中的 RSS:

InputStream responseStream = connection.getInputStream();
Response response = mRequest.createResponse();

Reader reader = new InputStreamReader(responseStream);
InputSource is = new InputSource(reader);
is.setEncoding("ISO-8859-2");

SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser saxParser = factory.newSAXParser();
saxParser.parse(is, response);

但是解析器返回带有奇怪符号的字符串。我尝试了很多东西,但没有任何帮助:(有人可以帮助我吗?

enter image description here

最佳答案

您是否尝试过设置 InputStreamReader 的字符集:

Reader reader = new InputStreamReader(responseStream, Charset.forName("ISO-8859-2"));
InputSource is = new InputSource(reader);

InputStreamReader(InputStream) 构造函数,如果您不指定字符集,则使用默认字符集(在我的机器上是 windows-1252)。

因此在您当前的设置中,字节被解释为(可能)windows-1252 字符,之后我认为您不能将它们重新解释为 ISO-8859-2。

关于java - Java 中的 Sax 解析器编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9880158/

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