【问题标题】:Parsing of this string解析这个字符串
【发布时间】:2010-09-17 07:26:40
【问题描述】:

我正在解析来自网络服务的响应:“http://www.google.com/ig/api?weather=Ahmedabad

现在我将与互联网上可用的解析示例并行,这是我的回应:

<?xml version="1.0" ?> 
- <xml_api_reply version="1"> 
- <current_conditions>
  <condition data="Haze" /> 
  <temp_f data="84" /> 
  <temp_c data="29" /> 
  <humidity data="Humidity: 74%" /> 
  <icon data="/ig/images/weather/haze.gif" /> 
  <wind_condition data="Wind: NW at 13 mph" /> 
- </current_conditions> 

如有必要,谁能帮我看看如何创建外部标签的对象?

对不起,如果我问了一个愚蠢的问题。 谢谢, 大卫

【问题讨论】:

  • 您的 xml 响应不可见,无论如何尝试在 SO 上搜索“xml parse”,您应该会找到很多资源

标签: android xml xml-parsing


【解决方案1】:

这里有一篇标题为Working with XML on Android 的文章,看起来正是你所需要的。

【讨论】:

    【解决方案2】:

    使用 SAX 解析器和方法 parse(InputSource is, DefaultHandler dh)。编写您自己的扩展 DefaultHandler 的类。解析逻辑在处理程序中。

    标签之间的值
    使用方法 characters(char[] ch, int start, int length) 将 xml 标签之间的字符存储在临时变量中。类似“tempValue.append(char, start, length);”的东西会做的。
    在 endElement(String uri, String localName, String qName) 方法中,当您知道它具有哪个 localName,即“标签名称”时,您可以保存临时值。

    属性值
    startElement(String uri, String localName, String qName, Attributes attributes) 方法可以读取标签内的属性值。例如 包含值“Haze”,当 localName 为条件时,该值带有属性“data”。在这种情况下,请尝试“attributes.getValue("data");"

    祝你好运

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-23
      • 2017-02-04
      • 2021-08-24
      • 1970-01-01
      • 2013-02-02
      相关资源
      最近更新 更多