<PPC>
  <Name>门</Name>
  
  <Goods>
    <Good>11906</Good>
    <Good>11115</Good>
  </Goods>
  <Rule RuleType="Meet">
    <If IfType="Ask">
      <Words>可可的翻跟斗法</Words>
      <AskJudge>包括文字</AskJudge>
    </If>
    <If IfType="BloodStatus">
      <JudgeType>等于</JudgeType>
      <JudgeValue>55</JudgeValue>
      <TypeName>体力/生命值</TypeName>
    </If>
    <Do DoType="Task">
      <TaskName>大概地方</TaskName>
      <TaskStatus>44</TaskStatus>
      <TaskOperator>Edit</TaskOperator>
    </Do>
    <Do DoType="Task">
      <TaskName>仍然</TaskName>
      <TaskStatus>45</TaskStatus>
      <TaskOperator>Edit</TaskOperator>
    </Do>
  </Rule>
  <Rule RuleType="Fight">
    <If IfType="MoneyStatus">
      <JudgeType>等于</JudgeType>
      <JudgeValue>44</JudgeValue>
      <TypeName>金钱</TypeName>
    </If>
    <Do DoType="Task">
      <TaskName>发日</TaskName>
      <TaskStatus>66</TaskStatus>
      <TaskOperator>New</TaskOperator>
    </Do>
  </Rule>
</PPC>

解决方案 »

  1.   

    问题不清楚,不太好回答。
    <If>下没有找到<TaskName>,<TaskStatus>,<TaskOperator>?
    到底想获得那些标签的值?
      

  2.   

    <If>下的<TaskName>,<TaskStatus>,<TaskOperator>???
    有么??
    <do>下的吧
      

  3.   

    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    DocumentBuilder builder = factory.newDocumentBuilder();
    Document document = builder.parse(new File("d:/test.xml"));
    Element rootElement = document.getDocumentElement();
    NodeList list = rootElement.getElementsByTagName("do");
    for (int i = 0; i < list.getLength(); i++) {
    Element element = (Element)list.item(i);
             //TaskStatus,TaskOperator和下面的类似,
             //只要把getElementsByTagName()的参数改成对应的就行~~~
    NodeList yearList = element.getElementsByTagName("TaskName");
    for (int j = 0; j < yearList.getLength(); j++) {
        Text text = (Text)yearList.item(j).getFirstChild();
        System.out.println(text.getData());//输出到控制台,楼主可以进行相应的存储
    }
    }
      

  4.   

    今天刚刚看了jstl标准库的 XML标签,只知道标签里可以这样做,其他的暂时不知道
    step 1.
         <xml:parse var="document">。。此为你xml文件的内容 </xml:parse>
    step 2.
        <x:forEach select="$document//Rule"> <!--编历Rule节点-->
           <x:if select=".//Do"> 
              <x:out select=".//Do/TaskName" />
           </x:if>
         </x:forEach>
    其他的也一样了