java怎么解析xml最简单
方法/步骤1先把xml中除了根节点的节点设置成对象,
2然后在对象就在加上xml注解,
3定义一个xml字符串的参数功能之后的解析效果查看,
4使用JAXBContextnewInstance实例化对象,
5把实例化的对象转换成xml的对象树,
6把xml字符串参数通过xml对象树转换成对象,
如果你想用java语言解析xml文件的话,可以使用Digester类来解析
首先你先根据xml文件结构来判断要解析这个xml文件需要几个bean类
如:
<xml version="10" encoding="utf-8">
<userrequest>
<user>
<username>tom</username><!--只有一个-->
<psw>1234</psw><!--只有一个-->
<dotype>1234</dotype><!--0插入,1修改,2删除-->
<school><!--一个或多个-->
<schoolname>和平路小学</schoolname><!--只有一个-->
<class>和平路小学</class><!--只有一个-->
</school>
<school>
<schoolname>22中学</schoolname>
<class>和平路小学</class>
</school>
<school>
<schoolname>大学</schoolname>
<class>和平路小学</class>
</school>
<school>
<schoolname>大学</schoolname>
<class>和平路小学</class>
</school>
<school>
<schoolname>大学</schoolname>
<class>和平路小学</class>
</school>
</user>
</userrequest>
就需要三个bean类,有userrequestclass,userclass,schoolclass三个类
然后编写解析这个xml的具体代码
首先FileInputStream fis = new FileInputStream("G:/A015requestxml");
得到流,
目的是fisavailable()查看有多少个字节
然后实例化Digester类
Digester digester = new Digester();
digesteraddObjectCreate(“userrequest”,userrequestclass);类
digesteraddObjectCreate(“userrequest/user”,userclass);类
digesteraddBeanPropertySetter(“userrequest/user/username”,"username");具体属性
其他同理
digesteraddSetNext(“userrequest/user”,“在userrequest类中的user的set方法”);(可能有多个)
把数据压进栈
最后关闭流
fisclose();
写完之后可以验证一下。
写的比较简单,希望你能明白呀。还有其他的简单方法你可以在网上查查,希望你能学会呀!
要给这段文字添加一个 root 标签,然后对里面的 node 进行遍历。root 标签的名字可以任意定(但是必须添加一个),我这里使用的 root 命名,对于其它的名字也一样。如果你是直接读取的 XML 文件,而不是字符串,可以将文件打开,然后把文件句柄传入 ElementTreeparse() 函数,最后对其返回值进行遍历。
from xmletree import ElementTreeparsed = ElementTreeXML('''<root>
<composer>Wolfgang Amadeus Mozart</composer> <author>Samuel Beckett</author> <city>London</city>
</root>''')
outstr = []
for node in parsed:
outstr += ['%s:%s'%(nodetag, nodetext)]
print(' 'join(outstr))
string xmlPath = "Demoxml"
XmlDocument _XmlDoc = new XmlDocument();
_XmlDocLoad(xmlPath);
//数组长度
string num = "";
Dictionary<string, string> xmlData = new Dictionary<string, string>();
foreach (XmlNode node in _XmlDocChildNodes)
{
if(nodeName == "num")
num = nodeAttributes["n"]Value;
if(nodeName == "pdr")
xmlDataAdd(nodeAttributes["t"]Value,nodeAttributes["Q"]Value);
}
//至此,你的XML解析完毕,字典里保存的是pdr数据,num 变量保存的是数组长度。
把所有的数据当做一个字符串
收到数据后先strstr(buffer,"<xml version=\"10\" encoding=\"UTF-8\">");
如果返回的是NULL则表示没有这段 退出
buffer是你收到的数据起始地址
以上就是关于java怎么解析xml最简单全部的内容,包括:java怎么解析xml最简单、怎么解析xml文件、Python编写一个程序以尝试解析XML/HTML标签.等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)