gpt4 book ai didi

android - ListView 解析波斯语、希腊语、阿拉伯语或 UTF-8 xml

转载 作者:行者123 更新时间:2023-11-29 21:58:13 26 4
gpt4 key购买 nike

我用了 tutorial关于 ListView 从互联网解析 xm 并使用 LasyAdapter 显示 ListView 中的项目。当我在 xml 中添加波斯字符(到子节点之一)时,结果是 ListView 中的一些框(在 ListView 中显示文本之后)。 xml的格式也是UTF-8。我也使用字体(但没有用)。此外,当我在应用程序中键入 Pwesian 时,它显示正常,但无法显示从 xml 解析的 Persiann 内容。提前致谢。我用原来的 XMLparser 更新了帖子(这是问题所在)。

public String getXmlFromUrl(String url) {
String xml = null;

try {
// defaultHttpClient
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);

HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
xml = EntityUtils.toString(httpEntity);

} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// return XML
return xml;
}

public Document getDomElement(String xml) {
Document doc = null;
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
try {

DocumentBuilder db = dbf.newDocumentBuilder();

InputSource is = new InputSource();
is.setCharacterStream(new StringReader(xml));
doc = db.parse(is);

} catch (ParserConfigurationException e) {
Log.e("Error: ", e.getMessage());
return null;
} catch (SAXException e) {
Log.e("Error: ", e.getMessage());
return null;
} catch (IOException e) {
Log.e("Error: ", e.getMessage());
return null;
}

return doc;
}

最佳答案

我能找到答案。感谢@Serdak。他让我想起了读者。在 getXMLFromUrl 部分,我应该更改:
xml = EntityUtils.toString(httpEntity);xml = EntityUtils.toString(httpEntity, "UTF-8");
在 getDomElement 部分我应该更改:
InputSource is = new InputSource(); is.setCharacterStream(new StringReader(xml)); to InputSource is = new InputSource(new ByteArrayInputStream(xml.getBytes("UTF-8")));
请请注意,“url”和“xml”都是由主要 Activity 调用并在 XMLparser.jave 中使用的字符串(其中包含 getXmlFromUrl() 和 getDomElement() )。
这些命令在主要 Activity 中:
XMLParser parser = new XMLParser();
字符串 xml = parser.getXmlFromUrl(URL)
;Document doc = parser.getDomElement(xml);

此致。

关于android - ListView 解析波斯语、希腊语、阿拉伯语或 UTF-8 xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12660235/

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