先看一下xml的格式,理解他的属性,节点,文本,域名 等等 都是什么。然后就好去解析他。第一个 <id>xyz</id> xyz是text的值,当然你可以通俗的理解为一个节点的vlaue第二个 <id value="xyz"/> 这个是id节点的value属性的值
解决方案 »
- JLDAP 如何通过UID查询
- 用POI解析Excel,保存时如焦点在下拉框上则报错。
- struts2和spring2.5集成问题
- 向我写的图书管理系统中加入Spring框架,大家给点建议
- Struts2中采用那种页面框架集好, Tiles or FreeMarker?
- 请问cnjbb支持oracle吗?如果支持改如何配置cnjbb2.properties啊?
- java字符串处理
- 如何找到java的帮助文件,请教各位大哥大姐,分不多,请多多赐教,謝謝
- 有关war打包的两个问题
- 请问各位在JB7里面怎么指定CMP2.0所使用的DataSource的JNDI阿?
- 高手们帮忙看看 这段程序为什么switch还有别的不执行啊
- js图片播放
NodeList nodeList=doc.getElementsByTagName(elementName);
Element el1=(Element)nodeList.item(0);
System.out.println(el1.getAttribute("att1"));节点:
<SavePath att1="xxx">/userfiles/fileUpload</SavePath>
输出 xxx
public class XmlProcessor {
private Document doc=null;
/**
* param1 xmlPath 指定XML文件的本地路径
* @param xmlPath
*/
public XmlProcessor(String xmlPath){
//很明显该类是一个单例,先获取产生DocumentBuilder工厂
//的工厂,在通过这个工厂产生一个DocumentBuilder,
//DocumentBuilder就是用来产生Document的
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
try{
DocumentBuilder db=dbf.newDocumentBuilder();
//这个Document就是一个XML文件在内存中的镜像
doc=db.parse(new File(xmlPath));
}catch(Exception e){
System.out.println("获取文档对象失败");
}
}
/**
*
* @param objInputStream XML 文件的InputStream输入流
*/
public XmlProcessor(InputStream objInputStream){
//很明显该类是一个单例,先获取产生DocumentBuilder工厂
//的工厂,在通过这个工厂产生一个DocumentBuilder,
//DocumentBuilder就是用来产生Document的
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
try{
DocumentBuilder db=dbf.newDocumentBuilder();
//这个Document就是一个XML文件在内存中的镜像
doc=db.parse(objInputStream);
}catch(Exception e){
System.out.println("获取文档对象失败");
}
}
public String getElementContent(String elementName){
String strReturn="";
try{
NodeList nodeList=doc.getElementsByTagName(elementName);
Element el1=(Element)nodeList.item(0);
System.out.println(el1.getAttribute("att1"));//获取属性的值,你应该再写在另一个方法里边
/*
Node node0=nodeList.item(0);
strReturn=node0.getFirstChild().getNodeValue();
*/
}catch(Exception e){
strReturn=e.toString().replaceAll("\n", "");
}
return strReturn;
}
public String getElementContent(String argfather,String son){
String strReturn="";
NodeList nodeList=doc.getElementsByTagName(argfather);
Node node0=nodeList.item(0);
NodeList objChildNodeList=node0.getChildNodes();
for(int i=0;i<objChildNodeList.getLength();i++){
Node temp=objChildNodeList.item(i);
//System.out.println(temp.getNodeValue());
if(son.equals(temp.getNodeName())){
strReturn=temp.getFirstChild().getNodeValue().trim();
break;
}
}
return strReturn;
}
public static void main(String[] args){
XmlProcessor xml=new XmlProcessor("D:\\_eclipse2\\MBASite200812291326\\src\\DBCfg\\FilePath.xml");
xml.getElementContent("SavePath");
}
}
使用getNodeValue当然是null ,你是获取value,value="XYZ"是你的一个属性!!!