java學習

          java學習

           

          XMLEventReader的基于Filter的過濾方式解析xml文件

          public static void test05() {
            XMLInputFactory factory = XMLInputFactory.newInstance();
            InputStream is = null;
            try {
             is = TestStax.class.getClassLoader().getResourceAsStream("books.xml");
             //基于Filter的過濾方式,可以有效的過濾掉不用進行操作的節點,效率會高一些
             XMLEventReader reader = factory.createFilteredReader(factory.createXMLEventReader(is),
               new EventFilter() {
                @Override
                public boolean accept(XMLEvent event) {
                 //返回true表示會顯示,返回false表示不顯示
                 if(event.isStartElement()) {
                  String name = event.asStartElement().getName().toString();
                  if(name.equals("title")||name.equals("price"))
                   return true;
                 }
                 return false;
                }
               });
             int num = 0;
             while(reader.hasNext()) {
              //通過XMLEvent來獲取是否是某種節點類型
              XMLEvent event = reader.nextEvent();
              if(event.isStartElement()) {
               //通過event.asxxx轉換節點
               String name = event.asStartElement().getName().toString();
               if(name.equals("title")) {
                System.out.print(reader.getElementText()+":");
               }
               if(name.equals("price")) {
                System.out.print(reader.getElementText()+"\n");
               }
              }
              num++;
             }
             System.out.println(num);
            } catch (XMLStreamException e) {
             e.printStackTrace();
            } finally {
             try {
              if(is!=null) is.close();
             } catch (IOException e) {
              e.printStackTrace();
             }
            }
           }

          posted on 2013-08-07 13:53 楊軍威 閱讀(206) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          導航

          統計

          常用鏈接

          留言簿

          隨筆檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 定结县| 克拉玛依市| 夏邑县| 万盛区| 永城市| 马关县| 呼伦贝尔市| 佛学| 喀喇沁旗| 浦县| 红安县| 息烽县| 壤塘县| 沙田区| 洛浦县| 敦煌市| 琼结县| 二连浩特市| 东丰县| 琼中| 贵定县| 武义县| 滁州市| 彰武县| 永寿县| 龙川县| 宜春市| 离岛区| 修武县| 昌吉市| 东方市| 海城市| 灵山县| 额敏县| 临高县| 纳雍县| 若羌县| 江华| 兴国县| 临颍县| 叙永县|