javaxml屬性值
『壹』 .java中怎樣獲取xml中節點屬性,即:下文 aa 的值
直接上代碼了
importjava.io.IOException;
importjavax.xml.parsers.DocumentBuilder;
importjavax.xml.parsers.DocumentBuilderFactory;
importjavax.xml.parsers.ParserConfigurationException;
importorg.w3c.dom.Document;
importorg.w3c.dom.Element;
importorg.w3c.dom.NodeList;
importorg.xml.sax.SAXException;
publicclassParserxml{
publicstaticvoidmain(String[]args)throwsException{
getDataFromXml("NewFile.xml");
}
(Stringxmlpath)
,SAXException,IOException{
DocumentBuilderFactorydbf=DocumentBuilderFactory.newInstance();
DocumentBuilderdb=dbf.newDocumentBuilder();
Documentdoc=db.parse(xmlpath);
doc.normalize();
NodeListlinks=doc.getElementsByTagName("proctData");
ElementitemLink=(Element)links.item(0).getChildNodes().item(1);
Stringstr=itemLink.getElementsByTagName("height").item(0).getAttributes().getNamedItem("aa").getNodeValue();
System.out.println("str-->"+str);//
}
}
『貳』 java xml 寫了一段代碼 屬性里的默認值出不來
接下XML一般有兩種方式,DOM和SAX,DOM是把xml文件一次性全解析到內存中,好處是隨即讀寫速度快,缺點是xml文件大的時候特耗內存。SAX是動態解析,是安裝xml文件中的域來解析,不是全部都放在內存中。好處是內存佔用小,缺點是不能隨機讀寫。我在項目中xml達到20M,還是用DOM的方法,這是要注意內存泄露還有給vm開打的內存。
『叄』 怎麼在java中使用dom解析XML文件中標簽屬性值 有哪些要注意的地方
public static void main(String[] args) {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
try {
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse("d:/test.xml"); //xml文件的絕對目錄
//得到根節點
Element root = doc.getDocumentElement();
//通過節點的名字獲得值
NodeList nl = root.getElementsByTagName("HLR");
Element e = (Element) nl.item(0);
String hlrId=e.getAttribute("HlrId");
System.out.println(hlrId);
}catch(Exception e){
e.printStackTrace();
}
}
『肆』 java怎麼通過xml節點的屬性獲取這個節點的值
創建解析器
SAXReader saxreader = new SAXReader();讀取文檔
Document doc = saxreader.read(new File("url"));獲取根
Element root = doc.getRootElement();獲取子節點
List<Element> list = root.elements();System.out.println(e.elementText("name"));
System.out.println(e.element("score").attributeValue("java"));
『伍』 怎麼在java中使用dom解析XML文件中標簽屬性值 有哪些要注意的地方
public
static
void
main(String[]
args)
{
DocumentBuilderFactory
dbf
=
DocumentBuilderFactory.newInstance();
try
{
DocumentBuilder
db
=
dbf.newDocumentBuilder();
Document
doc
=
db.parse("d:/test.xml");
//xml文件的絕對目錄
//得到根節點
Element
root
=
doc.getDocumentElement();
//通過節點的名字獲得值
NodeList
nl
=
root.getElementsByTagName("HLR");
Element
e
=
(Element)
nl.item(0);
String
hlrId=e.getAttribute("HlrId");
System.out.println(hlrId);
}catch(Exception
e){
e.printStackTrace();
}
}
『陸』 java中XML裡面屬性獲得的值的Element類型,怎麼轉換成int或Integer類型
強轉。Long a=10l; int b = (int)a; 不過如果long值超出int的取值范圍後再轉型的話會有問題的。就是轉型後的值變了,
『柒』 如何用java獲得xml文件中標簽的屬性列表值
import java.io.*;
import java.util.*;
import org.jdom.*;
import org.jdom.input.*;public class MyXMLReader2JDOM {
public static void main(String arge[]) {
long lasting = System.currentTimeMillis();
try {
SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(new File("xmlcount.xml"));
Element foo = doc.getRootElement();
// List allChildren = foo.getChildren();
System.out.print( foo.getAttributeValue("month-count"));
System.out.println(foo.getAttributeValue("total-count"));
} catch (Exception e) {
e.printStackTrace();
}
}
}
『捌』 Java怎麼解析xml子節點中的屬性,如下
dom4j中,使用Element.attributes方法可以獲取到節點的屬性,而使用elements則可以獲取相應的子節點
比如:
Element root = doc.getRootElement();
List attrList = root.attributes();
for (int i = 0; i < attrList.size(); i++) {
//屬性的取得
Attribute item = (Attribute)attrList.get(i);
System.out.println(item.getName() + "=" + item.getValue());
}
List childList = root.elements();
for (int i = 0; i < childList.size(); i++) {
//子節點的操作
Element it = (Element) childList.get(i);
//對子節點進行其它操作...
}
『玖』 如何用java取得XML節點的屬性值
下個dom4j包我下面的方法笨了點不知道還有好的不
import java.io.File;
import java.util.Iterator;
import org.dom4j.*;
import org.dom4j.io.SAXReader;
public class ResultXmlTest1 {
public static void main(String args[])
{
SAXReader reader=new SAXReader();
try
{
Document doc=reader.read(new File("result.xml"));
Element root=doc.getRootElement();
for(Iterator ite=root.elementIterator();ite.hasNext();)
{
Element ele=(Element)ite.next();
for(Iterator iter=ele.elementIterator();iter.hasNext();)
{
Element elem=(Element)iter.next();
//System.out.println(elem.getName());
for(Iterator itera=elem.elementIterator();itera.hasNext();)
{
Element eleme=(Element)itera.next();
//System.out.println(eleme.getName());
for(Iterator iterat=eleme.elementIterator();iterat.hasNext();)
{
Element elemem=(Element)iterat.next();
//System.out.println(elemem.getName());
for(Iterator iterato=elemem.elementIterator();iterato.hasNext();)
{
Element elememe=(Element)iterato.next();
//System.out.println(elememe.getName());
for(Iterator last=elememe.elementIterator();last.hasNext();)
{
Element elemLast=(Element)last.next();
//System.out.println(elemLast.getName());
for(Iterator at=elemLast.attributeIterator();at.hasNext();)
{
Attribute att=(Attribute)at.next();
if(att.getName().equals("start"))
System.out.println(att.getText());
}
}
}
}
}
}
}
}catch(DocumentException e)
{
e.printStackTrace();
}
}
}