我试图从Google使用天气api获取天气数据并通过JDOM解析文档。JDOM使用变音符号解析XML
这是我使用的代码:
SAXBuilder builder = new SAXBuilder();
Document doc;
URL url = new URL(GOOGLE_WEATHER_API);
doc = builder.build(url);
Element root = doc.getRootElement();
Element weather = root.getChild("weather");
List currentConditions = weather.getChildren("current_conditions");
...
问题是,每当由谷歌返回的XML包含变音字符(U,A,O数...),我得到一个JDOMParseException
org.jdom.input.JDOMParseException: Error on line 1 of document http://www.google.de/ig/api?weather=Heidelberg&hl=en :
Fatal Error: com.sap.engine.lib.xml.parser.ParserException:
Incorrect encoded sequence detected at character (hex) 0x72, (bin) 1110010.
Check whether the input parsed contains correctly encoded characters.
Encoding used is: 'utf-8'(http://www.google.de/ig/api?weather=Heidelberg&hl=en, row:1, col:191):
Incorrect encoded sequence detected at character (hex) 0x72, (bin) 1110010.
Check whether the input parsed contains correctly encoded characters.
Encoding used is: 'utf-8' (http://www.google.de/ig/api?weather=Heidelberg&hl=en, row:1, col:191)
当我在浏览器中打开URL时,检查编码为UTF-8的页面属性。所以我不知道为什么它不起作用。 有没有人有想法?
最好的问候,保罗
奇怪,我想不出除了可能什么尝试像Xerces的不同的XML解析器。我不知道com.sap.engine.lib.xml.parser。 – 2011-12-27 13:12:06