精华内容
下载资源
问答
  • JAVA解析string类型xml字符串

    千次阅读 2018-12-11 18:00:31
    我先拼接一个xml格式的字符串,模拟获取了这样的数据,然后再解析 所需要的包自行导入 StringBuilder sb = new StringBuilder(); sb.append("<?xml version=\&...

    我先拼接一个xml格式的字符串,模拟获取了这样的数据,然后再解析
    所需要的包自行导入

    	 StringBuilder sb = new StringBuilder();
            sb.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
            sb.append("<root>");
            sb.append("    <header>");
            sb.append("        <mark>" + "this is a mark!"+ "</mark>");
            sb.append("    </header>");
            sb.append("    <body>");
            sb.append("        <data>");
            sb.append("             <first>");
            sb.append("            	 <second>" + "来解析我啊!"+ "</second>");
            sb.append("             </first>");
            sb.append("        </data>");
            sb.append("    </body>");
            sb.append("</root>");
    	 //开始解析
            String str= sb.toString();
            Document doc = null;
            try {
                doc = DocumentHelper.parseText(str);
            } catch (DocumentException e) {
                e.printStackTrace();
            }
            Element root = doc.getRootElement();// 指向根节点  <root>
            try {
                Element mark=root.element("header").element("mark");
                Element second=root.element("body").element("data").element("first").element("second");
                //获取xml的节点内容
                System.out.println(mark.getTextTrim());
                System.out.println(second.getTextTrim());
            }catch(Exception e){
                e.printStackTrace();
            }
          
    

    运行结果:
    运行结果

    展开全文
  • java 解析String类型xml

    千次阅读 2009-04-13 19:38:00
    网络中有时候我们的参数是以xml类型传递的,有时会把xml拼成一个String字符串。解析如下:单一xml文档解析xml文件 > IfWarning >IfWarning> >zh java 解析public static boolean strParseXML(String str){ ...

    网络中有时候我们的参数是以xml类型传递的,有时会把xml拼成一个String字符串。

    解析如下:

    单一xml文档解析

    xml文件

    <?xml version="1.0" encoding="gb2312"?>

    <IfResponse>

       <IfResult ></IfResult>

       <IfWarning ></IfWarning>

       <IfError >zh</IfError>

    </IfResponse>

     

    java 解析

    public static boolean strParseXML(String str){
      DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();   
        DocumentBuilder builder; 
        String ifResult=null;
        String ifWarning=null;
     
         try    {  
           builder  =  factory.newDocumentBuilder();  
           Document doc  =  builder.parse( new  ByteArrayInputStream(str.getBytes()));
           if(doc.getElementsByTagName("IfResult").item(0).getFirstChild()!=null){
          ifResult=doc.getElementsByTagName("IfResult").item(0).getFirstChild().getNodeValue();
            if(ifResult.equals("0")){
            ……

             return true;
            }else{
             if(doc.getElementsByTagName("IfWarning").item(0).getFirstChild()!=null){
              ifWarning=doc.getElementsByTagName("IfWarning").item(0).getFirstChild().getNodeValue();
             }
             if(doc.getElementsByTagName("IfError").item(0).getFirstChild()!=null){
              ifError=doc.getElementsByTagName("IfError").item(0).getFirstChild().getNodeValue();
             }
             }
             
            }
           }
          
        }   catch  (ParserConfigurationException e)   {  
          e.printStackTrace();  
        }   catch  (SAXException e)   {  
          e.printStackTrace();  
        }   catch  (IOException e)   {   
          e.printStackTrace();  
        }
        return false;

      }

     

    多重参数解析,以对象形式放到List里

     

     public static List<ExteriorImages> xmlInfoParaseModel(String strInfo){
      List<ExteriorImages> list=new ArrayList<ExteriorImages>();
      DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
      
        DocumentBuilder builder;
        try{
         builder  =  factory.newDocumentBuilder();  
         Document doc  =  builder.parse( new  ByteArrayInputStream(strInfo.getBytes()));
         int nodeLength=doc.getElementsByTagName("message").getLength();//获取所有节点个数
         for(int i=0;i<nodeLength;i++){
          ExteriorImages images=new ExteriorImages();
          images.setR_code(doc.getElementsByTagName("code").item(i).getFirstChild().getNodeValue());
          images.setBar_state(doc.getElementsByTagName("state").item(i).getFirstChild().getNodeValue());
          images.setApp_user(doc.getElementsByTagName("user").item(i).getFirstChild().getNodeValue());

          list.add(images);
         }
         return list;
        
        }
           catch(ParserConfigurationException e)   {  
           e.printStackTrace();  
         }   catch(SAXException e)   { 
           e.printStackTrace();  
         }   catch(IOException e)   {
                 e.printStackTrace();  
         } 
      return null;
     }

    展开全文
  • java解析string类型xml

    千次阅读 2012-08-09 16:16:32
    1.字符串dataxml值如下: ...String destination = null;...String dynamicCheckbox = doc.getElementsByTagName("DynamicCheckbox")....dataxml = "<?xml version=\"1.0\" encoding=\"gbk\"?>" +dataxml;

    1.字符串dataxml值如下:

    <form>

    <hideArea>
    <subject>超级管理员</subject>
    <urgency>0</urgency>
    <security>0</security>
    </hideArea>
    <checked>
    <DynamicCheckbox value="1,4,7">基地组织,爆破中心,门岗7</DynamicCheckbox>
    </checked>

    </form>


    2.获得节点属性值及子节点值

    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    DocumentBuilder builder = factory.newDocumentBuilder();
    String destination = null;
    Document doc = builder.parse( new ByteArrayInputStream(dataxml.getBytes()));
    if(doc.getElementsByTagName("DynamicCheckbox").item(0).getFirstChild()!=null){
    String dynamicCheckbox = doc.getElementsByTagName("DynamicCheckbox").item(0).getAttributes().item(0).getNodeValue(); //节点“DynamicCheckbox”第一个属性值,即“1,4,7”;

    String dynamicCheckbox2 = doc.getElementsByTagName("DynamicCheckbox").item(0).getNodeValue(); //节点“DynamicCheckbox”第一个节点值,即“基地组织,爆破中心,门岗7”;

    }

    如果dataxml中含有中文:则

    dataxml = "<?xml version=\"1.0\" encoding=\"gbk\"?>" +dataxml;


    展开全文
  • java string类型xml解析为对象

    千次阅读 2017-07-13 11:53:05
    下面是一个需要解析的xml: string stringxml=“ test@test.com test123 1 CEO 13800138000 01084291263

    下面是一个需要解析的xml:

    string stringxml=“
    
    <?xml version="1.0" encoding="GB2312" ?>
    
    <userlist>
    
           <user>
    
                  <userid>test@test.com</userid>
    
                  <name>test123</name>
    
                  <departmentid>1</departmentid>
    
                  <office>CEO</office>
    
                  <mobile>13800138000</mobile>
    
                  <phone>01084291263</phone>
    
                  <fax>01084291263001</fax>
    
           </user>
    
     
    
           <user>
    
                  <userid>test2@test.com</userid>
    
                  <name>test333</name>
    
                  <departmentid>2</departmentid>
    
                  <office>CEO</office>
    
                  <mobile>138001380444</mobile>
    
                  <phone>0108429145</phone>
    
                  <fax>01084291263001</fax>
    
           </user>
    
    </userlist>
    ”




    xml写得有点随便,就是一个需要解析的长xml


    代码:

     第一:先创建一个跟xml文件字段对应的javabean:

    package com.zy.mailbox.bean;
    
    public class User {
     private String userid;
     private String name;
     private String departmentid;
     private String office;
     private String mobile;
     private String phone;
     private String fax;
    public String getUserid() {
    	return userid;
    }
    public void setUserid(String userid) {
    	this.userid = userid;
    }
    public String getName() {
    	return name;
    }
    public void setName(String name) {
    	this.name = name;
    }
    public String getDepartmentid() {
    	return departmentid;
    }
    public void setDepartmentid(String departmentid) {
    	this.departmentid = departmentid;
    }
    public String getOffice() {
    	return office;
    }
    public void setOffice(String office) {
    	this.office = office;
    }
    public String getMobile() {
    	return mobile;
    }
    public void setMobile(String mobile) {
    	this.mobile = mobile;
    }
    public String getPhone() {
    	return phone;
    }
    public void setPhone(String phone) {
    	this.phone = phone;
    }
    public String getFax() {
    	return fax;
    }
    public void setFax(String fax) {
    	this.fax = fax;
    }
    @Override
    public String toString() {
    	return "User [userid=" + userid + ", name=" + name + ", departmentid=" + departmentid + ", office=" + office
    			+ ", mobile=" + mobile + ", phone=" + phone + ", fax=" + fax + "]";
    }
     
     
    }
    


    2.<=================编写解析工具========================>
    package com.zy.mailbox.utils;
    import java.io.IOException;
    import java.io.StringReader;
    import java.util.ArrayList;
    import java.util.List;
    
    
    import org.jdom.Document;
    import org.jdom.Element;
    import org.jdom.JDOMException;
    import org.jdom.Namespace;
    import org.jdom.input.SAXBuilder;
    import org.xml.sax.InputSource;
    
    import com.zy.mailbox.bean.User;
    public class ReadXML {
    	
    	 public static List<User> xmlElements(String xmlDoc) {
    	        //创建一个新的字符串
    	        StringReader read = new StringReader(xmlDoc);
    	        //创建新的输入源SAX 解析器将使用 InputSource 对象来确定如何读取 XML 输入
    	        InputSource source = new InputSource(read);
    	        //创建一个新的SAXBuilder
    	        SAXBuilder sb = new SAXBuilder();
    	       List<User> users = new ArrayList<>();
    	        try {
    	            //通过输入源构造一个Document
    	            Document doc = sb.build(source);
    	            //取的根元素
    	            Element root = doc.getRootElement();
    	            System.out.println(root.getName());//输出根元素的名称(测试)
    	            //得到根元素所有子元素的集合
    	            List jiedian = root.getChildren();
    	            //获得XML中的命名空间(XML中未定义可不写)
    	            Namespace ns = root.getNamespace();
    	            Element et = null;
    	            for(int i=0;i<jiedian.size();i++){
    	                et = (Element) jiedian.get(i);//循环依次得到子元素
    	               User user = new User();
    	              String userid = et.getChild("userid",ns).getText();
    	              String name = et.getChild("name",ns).getText();
    	              String departmentid = et.getChild("departmentid",ns).getText();
    	              String office = et.getChild("office",ns).getText();
    	              String mobile = et.getChild("mobile",ns).getText();
    	              String phone = et.getChild("phone",ns).getText();
    	              String fax = et.getChild("fax",ns).getText();
    	    	      user.setUserid(userid);
    	    	      user.setName(name);
    	    	      user.setDepartmentid(departmentid);
    	    	      user.setOffice(office);
    	    	      user.setMobile(mobile);
    	    	      user.setPhone(phone);
        	          user.setFax(fax);
        	          users.add(user);
    	            }
    	           
    
    	        } catch (JDOMException e) {
    	           
    	            e.printStackTrace();
    	        } catch (IOException e) {
    	            
    	            e.printStackTrace();
    	        }
    	        return users;
    }
    
    }
    


    
    


    最后运行打印:


    User [userid=zhanjie@zy.com, name=张1杰, departmentid=717, office=教师, mobile=13268212733, phone=, fax=]
    User [userid=zhangjixian1@zy.com, name=张洁娴, departmentid=9161, office=经理, mobile=+86-13922431120, phone=84419009-308, fax=]
    User [userid=zhanjing1@zy.com, name=张静, departmentid=5104, office=校区校长, mobile=+86-13163789684, phone=, fax=]
    User [userid=zhangjig@zy.com, name=张静, departmentid=5013, office=语文教师, mobile=13714430743, phone=, fax=]
    User [userid=zhangjngxin@zy.com, name=张静欣, departmentid1=748, office=行政, mobile=13928888334, phone=, fax=]
    User [userid=zhagjingya@zy.com, name=张静雅, departmentid=814, office=专职教师, mobile=18218880206, phone=, fax=]
    User [userid=zhagjingyao@zy.com, name=张婧瑶, departmentid=9143, office=小升初英语研发主任, mobile=15975383408, phone=, fax=]

    。。。。。。。。。。。。。。



    展开全文
  • 今天小编就为大家分享一篇java 解析String类型拼接的XML文件方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • java解析String类型拼接的XML文件

    万次阅读 2016-09-08 16:59:21
    首先要解析string类型xml必须先要将其转化成dom格式,然后再进行解析取值,如下是解析代码示例: package com.company; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j....
  • 需要用jar包 dom4j-1.6.1.jar 字符串xml如下: aa 22 1 0 10.1.1.2 9999 10.1.1.5
  • javaString类型xml格式数据解析

    千次阅读 2019-03-20 15:04:32
    最近研究java爬虫,Get请求后取得数据为String类型xml数据,尝试了许久的解析,因此做个小记录。 xml数据如下(String类型): <?xml version="1.0" encoding="UTF-8"?> <a>123456 <g>0064542 <co>DE <f>143 ...
  • 第一个连接器  第二个连接器  开启服务  初始化一下  执行请求服务  销毁一下  关闭服务     public void parseXml03(){  try{
  • 解析String类型XML

    千次阅读 2011-07-23 15:24:59
    场景:解析字符串类型XML 实例代码:import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import or
  • Java后台解析String形式的Xml

    千次阅读 2010-10-19 16:07:00
    Flex通过request,把前台封装成的Xml传到后台,现在大致讲一下,在后台里javax是怎么解析String形式的Xml,将其转换成bean的,下面这个方法是我在做联系人管理时保存个人地址信息的方法,用红色标记的是得到一...
  • 解析接受的string类型xml文档 package test; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import org.apache.http.HttpEntity; import org....
  • java 解析接口返回xml类型

    千次阅读 2017-08-01 09:55:08
    public static Map parseXml(String xml) { if (StringUtils.isEmpty(xml)) { return new HashMap(); } SAXReader saxReader = new SAXReader(); Document document = null; try { document = saxReader.read
  • Java解析和修改xml文件

    千次阅读 2014-10-31 09:19:20
    初到公司被解析xml给雷到了,纠结的地方
  • 对于小数据返回值直接可采用Document、element...针对返回数据大的xml可采取Java String 分割截取方式处理。 如下报文返回的是银行信息,程序需要获得BankLocationCode、BankLocationName、BankId、AreaId节点值。 可采
  • Java 解析 XML

    千次阅读 2016-01-31 07:23:08
    Java 解析 XML标签: Java基础XML解析技术有两种 DOM SAX DOM方式 根据XML的层级结构在内存中分配一个树形结构,把XML的标签,属性和文本等元素都封装成树的节点对象 优点: 便于实现增 删 改 查 缺点: XML文件过大...
  • Java解析、读取XML文件并存入TXT文件的简单例子 利用Document得到包含文本的对象doc,利用DOM结点实现xml内容的读取,存入TXT文件。
  • java解析XMLjava解析HTML

    千次阅读 2011-10-19 22:32:00
    一。dom4j 解析xml:   俩jar包:dom4j-1.6.1.jar 和jaxen-1.1-beta-... * java解析xml文件各个节点信息 * * @author Jeelon * @param string * :解析的文件名 */ private static void getXmlIn
  • java使用xstream解析xmlXMLjava对象

    千次阅读 2020-05-27 18:59:08
    pom 添加依赖 <dependency> <groupId>com.thoughtworks.xstream</groupId> <artifactId>xstream</artifactId>...xml内容: ... public static void main(String[] args){ .
  • Java解析XML文件

    万次阅读 多人点赞 2017-12-27 09:47:29
    Dom解析是将xml文件全部载入到内存,组装成一颗dom树,然后通过节点以及节点之间的关系来解析xml文件,与平台无关,java提供的一种基础的解析XML文件的API,理解较简单,但是由于整个文档都需要载入内存,不适用于文档较...
  • java 解析/操作 xml 几种常用方式 xml的增加/删除/修改 首先,我们先介绍几种常用的xml解析器。 1. 介绍 1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构...
  • java 解析/拆分 xml

    千次阅读 2012-08-21 16:12:21
    public static String getXmlElmentValue(String xml) { StringBuffer str = new StringBuffer(); try { org.dom4j.Document doc = DocumentHelper.parseText(xml); org.dom4j.Element el = doc....
  • JAVA解析XML和书写XML

    千次阅读 2021-03-27 00:04:57
    JAVA解析XML和书写XML 一.解析XML 1.解析user.xml文档 ​ 解析user.xml文档,使用DOM4J解析XML,将User.xml文档解析后的所有员工入对象中,将对象在存储到集合中。 1.创建自定义User类 ​ 属性包括:id(序号),...
  • Java解析rdf和xml文件以及处理excel

    千次阅读 2016-01-14 15:52:02
    一.Java解析rdf文件 1.下载jena库 首先,从这里下载 jena 包 apache-jana-2.7.*.tar.gz(我用的是2.7)。解压。打开 Eclipse,新建一个Java Project。右键点击项目->properties->Java Build Path -> libraries。将...
  • java&android解析xmlxml转换为json

    千次阅读 2018-08-31 16:28:36
    项目数据传输使用的xml,大多数项目都使用的是json,xml解析起来不是很方便,特别想做到将xml直接解析成javaBean,找了很多方法效果也都不是很好,最后的思路是将xml转换成json,再将json转换成javaBean。...
  • JAVA解析XML

    千次阅读 2016-01-18 13:51:23
    JAVA中最常用的解析xml的方式有四种,分别为:sax、dom、dom4j、jdom。sax方式的解析是基于事件的,比较适合大数据的解析,而dom的方式会将xml加载到内存中,构建出dom树,解析大文件时容易造成内存溢出,在实际...
  • JAVA 解析Xml字符串

    千次阅读 2017-04-20 20:26:08
    JAVA 解析Xml字符串(dom4j)
  • Java解析XML与生成XML文件

    千次阅读 2015-10-20 17:29:08
    XML是eXtensible Markup Language(可扩展标记语言)的简写形式,它是一种元标记语言(meta-markup language),也就是说它没有一套能够适用于各个领域中所有用户的固守的标签和元素,相反,它允许开发者根据自已的需要...
  • Java解析xml——SAX解析

    千次阅读 2016-05-27 13:58:33
    Dom解析是将整个xml文件加载到内存中,然后再进行相关的操作。 SAX解析是依次读取xml文件的内容,逐个解析。 二、SAX解析实例 books.xml: 冰与火之歌 乔治马丁 2014 89 安徒生童话 40 2004 ...
  • java解析xml文件

    万次阅读 2012-04-14 19:45:43
    使用java解析xml文件,通过dom4j。 代码如下: package com.java.team; import java.io.File; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import org.dom4j.Document; ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 270,419
精华内容 108,167
关键字:

java解析string类型的xml

java 订阅