我使用了一个关于 listview 从互联网解析 xm 并使用 LasyAdapter 显示列表视图中的项目的教程。当我在 xml 中添加波斯字符(到子节点之一中)时,结果是列表视图中的一些框(在列表视图中显示文本之后)。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;
}