<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    休息食客

    隨心而動

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      16 隨筆 :: 7 文章 :: 2 評論 :: 0 Trackbacks

    假如有一個字符串的內容是xml格式,如:

     

            String aa = "<row>"+
                          
    "<user>"+
                            
    "<userid>1000</userid>"+
                            
    "<username>aaa</username>"+
                            
    "</user>"+
                          
    "<user>"+
                            
    "<userid>1001</userid>"+
                            
    "<username>bbb</username>"+
                          
    "</user>"+
                        
    "</row>";

    這是一個字符串,不是一個XML文檔,只是該字符串里面的內容是XML格式,該怎么解析呢?
    假如我有一個User對象,有userid和username屬性,然后把該字符串里面的數據解析到User對象來。
    思路:把該字符串先解析為docment樹形文檔,然后獲取根元素row,再然后獲取根元素的第一個子元素user,然后獲取user元素的第一個子元素userid并把該值存入user對象里
    看代碼:

    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;

    import org.dom4j.Document;
    import org.dom4j.DocumentException;
    import org.dom4j.DocumentHelper;
    import org.dom4j.Element;

    public class test {    

        
    /**
         * 
    @param args
         
    */

        
    public static void main(String[] args) {
            
    // TODO Auto-generated method stub

            String aa 
    = "<row>"+
                          
    "<user>"+
                            
    "<userid>1000</userid>"+
                            
    "<username>aaa</username>"+
                            
    "</user>"+
                          
    "<user>"+
                            
    "<userid>1001</userid>"+
                            
    "<username>bbb</username>"+
                          
    "</user>"+
                        
    "</row>";
            test t 
    = new test();
            List
    <User> lu = new ArrayList<User>();
            User user 
    = new User();
            lu 
    = t.Analysis(aa, lu, user);
            
    for(User u : lu){;
                System.out.println(u.getUserid()
    +"  "+u.getUsername());
            }

        }

        
        
    public test(){
            
        }

        
        
    public List<User> Analysis(String s,List<User> lu,User user){
            Document doc 
    = null;             
            
    try {
                doc 
    = DocumentHelper.parseText(s);// 將字符串轉為document樹形格式
            }
     catch (DocumentException e) {
                e.printStackTrace();
            }
             
            Element rootElt 
    = doc.getRootElement(); // 獲取根節點
            Iterator iter = rootElt.elementIterator("user"); // 獲取根節點下的子節點user
            while (iter.hasNext()) {
                user 
    = new User();
                Element recordEle 
    = (Element) iter.next();
                Iterator iters 
    = recordEle.elementIterator("userid"); // 獲取子節點user下的子節點userId
                while(iters.hasNext()){
                    Element userId 
    = (Element) iters.next();
                    user.setUserid(Long.parseLong(userId.getText()));
                }

                iters 
    = recordEle.elementIterator("username"); // 獲取子節點user下的子節點username
                while(iters.hasNext()){
                    Element username 
    = (Element) iters.next();
                    user.setUsername(username.getText());
                }

                lu.add(user);
            }
     
            
    return lu;
        }


    }


    class User {
        
    private Long userid;
        
    private String username;
        
    public Long getUserid() {
            
    return userid;
        }

        
    public void setUserid(Long userid) {
            
    this.userid = userid;
        }

        
    public String getUsername() {
            
    return username;
        }

        
    public void setUsername(String username) {
            
    this.username = username;
        }
        
    }

    整個解析過程及思路在Analysis方法里面,注釋寫清楚了,可以自己去琢磨!

    posted on 2014-09-28 15:01 休息食客 閱讀(293) 評論(0)  編輯  收藏 所屬分類: java
    主站蜘蛛池模板: 亚洲av成人无码网站…| 中文在线免费看视频| 国产L精品国产亚洲区久久| 三年在线观看免费观看完整版中文| 亚洲午夜精品一区二区| 蜜桃精品免费久久久久影院 | 中文永久免费观看网站| 亚洲天堂福利视频| 亚洲AV无码乱码在线观看性色扶| 99re6在线视频精品免费| 国产精品高清视亚洲精品| 亚洲国产成人VA在线观看| 毛片免费全部播放无码| ssswww日本免费网站片| 亚洲午夜久久久久久尤物| 亚洲性日韩精品国产一区二区| 最好看最新的中文字幕免费| 牛牛在线精品免费视频观看| 4444亚洲国产成人精品| 亚洲成a人在线看天堂无码| 成人免费毛片内射美女-百度| 国产伦精品一区二区免费| 亚洲最大福利视频| 亚洲国产二区三区久久| 天堂亚洲免费视频| 大地资源免费更新在线播放| 久久99精品视免费看| 亚洲日韩在线观看免费视频| 亚洲一区二区三区成人网站| 亚洲AV人人澡人人爽人人夜夜| 免费一级国产生活片| 在线观看AV片永久免费| 99久久人妻精品免费一区| 亚洲精品偷拍视频免费观看| 亚洲国产精品无码久久98 | 久久精品国产精品亚洲蜜月| 亚洲国产成人精品久久久国产成人一区二区三区综 | 日韩人妻无码精品久久免费一| 一区免费在线观看| 最新亚洲春色Av无码专区| 亚洲精品福利网站|