可以通过元素中的getText方法获取到节点的内容。
举例:
SAXReader sax = new SAXReader();
Document document = saxread(reader);//reader为定义的一个字符串,可以转换为xml
Element root = documentgetRootElement();//获取到根节点元素String str = root getText()//获取到节点的内容
用到的是dom4j-161jar,需要引入的包是:
import orgdom4jDocument;
import orgdom4jDocumentException;
import orgdom4jElement;
import orgdom4jioSAXReader;
备注:如果是多个子节点可以通过地Element xx=root element("code")逗获取到子节点的元素,前提是需要知道子节点的名称。
XmlDocument xml = new XmlDocument();
xmlLoad("RSSChannelXML");//加载文件
XmlNode xmlNode = xmlDocumentElement;//获取根节点
foreach (XmlNode node in xmlNodeChildNodes)//获取第一个子节点
{
TreeNode newNode = treeView1NodesAdd(nodeAttributes[0]ValueToString());//获取节点第1个属性的值
foreach (XmlNode node1 in nodeChildNodes)
{
newNodeNodesAdd(node1Attributes[0]ValueToString());//获取子子节点第1个属性的值
newNodeTag = node1InnerText;
}
}
XmlDocument先把xml load进来。。
//取所有root节点子节点
XmlNodeList nodeList = docSelectNodes("/root");
for each(XmlNode node in nodeList) //遍历每一个子节点
{
//分别读取子节点的需要节点值,自己存吧,反正这么取的
string elementValue=nodeSelectSingleNode("//elementValue")InnerTextToString();
string elementScore=nodeSelectSingleNode("//elementScore")InnerTextToString();
}
Reader reader = new InputStreamReader(con
getInputStream());
SAXReader sax = new SAXReader();
// saxsetEncoding("GBK");
Document document = saxread(reader);
documentsetXMLEncoding("GBK");
Element root = documentgetRootElement();
// Document doc = readerread(read);
// Element root = docgetRootElement();
readNode(root, "");
public static void readNode(Element root, String prefix) {
if (root == null) return;
// 获取属性
List attrs = rootattributes();
if (attrs != null && attrssize() > 0) {
Systemerrprint(prefix);
for (Attribute attr : attrs) {
Systemerrprint(attrgetValue() + " ");
}
Systemerrprintln();
}
// 获取他的子节点
List childNodes = rootelements();
prefix += "\t";
for (Element e : childNodes) {
//输出内容
Systemerrprintln(egetName()+":"+egetData());
readNode(e, prefix);
}
}
XmlNodeList _xnList = _xmlDocSelectNodes("//DataList//Product//From[@id="+_id+"] and @users=‘张三’ and
");
public class StudentTest {
public static void main(String[] args) throws Exception {
DocumentBuilderFactory factory = DocumentBuilderFactorynewInstance();
DocumentBuilder db = factorynewDocumentBuilder();
Document document = dbparse(new File("studentxml"));
NodeList node = documentgetElementsByTagName("学生");
for(int i=0;i<nodegetLength();i++){
Element element = (Element)nodeitem(i);
// 获取属性学号
String content = elementgetAttribute("学号");
Systemoutprintln("学号:" + content);
content = elementgetElementsByTagName("姓名")item(0)getFirstChild()getNodeValue();
Systemoutprintln("姓名:" + content);
content = elementgetElementsByTagName("性别")item(0)getFirstChild()getNodeValue();
Systemoutprintln("性别:" + content);
content = elementgetElementsByTagName("年龄")item(0)getFirstChild()getNodeValue();
Systemoutprintln("年龄:" + content);
Systemoutprintln();
}
}
}// 被解析的XML文件内容(studentxml)
<xml version="10" encoding="UTF-8">
<学生名册>
<学生 学号="0001214">
<姓名>张燕</姓名>
<性别>女</性别>
<年龄>22</年龄>
</学生>
<学生 学号="0001239">
<姓名>李继成</姓名>
<性别>男</性别>
<年龄>22</年龄>
</学生>
<学生 学号="0001275">
<姓名>华伟</姓名>
<性别>男</性别>
<年龄>22</年龄>
</学生>
</学生名册>
自己慢慢看吧;
// 获取属性学号
String content = elementgetAttribute("学号");
Systemoutprintln("学号:" + content);
using SystemXml;
//初始化一个xml实例
XmlDocument xml=new XmlDocument();
//导入指定xml文件
xmlLoad(path);
xmlLoad(>
C# *** 作XML 有以下几种方式:
1:使用XmlDocument相关类库和方法 *** 作xml
2:使用XDocument相关类库和方法 *** 作xml
3:使用XmlReader和XmlWriter相关类库和方法 *** 作xml
获得指定节点的值也需要 分为属性和元素
1:使用XmlDocument
XmlDocument doc = new XmlDocument();
docLoad("Customer2xml");
// XmlNodeList nodeList = docGetElementsByTagName("row");
XmlNodeList nodeList = docSelectNodes("/Table/row");
//读取属性+元素
foreach (XmlNode item in nodeList)
{
customerInfoAppId = itemAttributes["AppID"]Value;
customerInfoCustomerID = item["CustomerID"]InnerText;
}
2:使用XDocument
XDocument xdoc = XDocumentLoad("Customer2xml");
var custs = from customer in xdocDescendants("row")
select new
{//读取属性+元素
Version = customerAttribute("Version")Value,
CustomerID = customerElement("CustomerID")Value,
};
3:使用XmlReader
XmlReader reader = XmlReaderCreate("Customer2xml", settings);
//读取属性
while (readerRead())
{
if (readerNodeType == XmlNodeTypeElement)
{
switch (readerName)
{
case "row":
customerInfo = new CustomerInfo();
if (readerHasAttributes)
{
customerInfoAppId = readerGetAttribute("AppID");
customerInfoVersion = readerGetAttribute("Version");
}
break;
case "CustomerID":
customerInfoCustomerID = readerReadString();
break;
}
}
以上就是关于怎么获取xml某个节点下的所有内容全部的内容,包括:怎么获取xml某个节点下的所有内容、如何用XMLDocument组件获得XML文件里子节点的全部的内容(delphi)、.net读取XML子节点的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)