我有一个XML字符串

<ShowPercentage>
    <SPGLevel>
        <Level> 1 </Level>
        <percentage>40</percentage>
    </SPGLevel>
    <SPGLevel>
        <Level> 2 </Level>
        <percentage>60</percentage>
    </SPGLevel>
</ShowPercentage>

SPG级别是可重复的。这是键=级别和值=百分比的地图

我想使用Digester解析此XML。谁能帮助我入门?

最佳答案

答案可能类似于以下代码,但是我对此没有进行测试:

public class SampleDigester
{
  private Map<String, String> map = new HashMap<String, String>();

  public void run() throws IOException, SAXException {
    Digester digester = new Digester();
    digester.push(this);

    digester.addCallMethod("ShowPercentage/SPGLevel", "addKey", 2);
    digester.addCallParam("ShowPercentage/SPGLevel/Level", 0);
    digester.addCallParam("ShowPercentage/SPGLevel/percentage", 1);
    digester.parse("input.xml");

  }

  public void addKey(String key, String value) {
    map.put(key, value);
  }

}

关于java - 在摘要器中解析 map ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9292118/

10-08 23:24