Java 实现XML文件解析

public class ParseXML
{

public static void main(String args[])
{
try
{
//获取到配置文件
String configFileName = "src/example.xml";
File f = new File(configFileName);
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder db;
db = factory.newDocumentBuilder();
Document documents;
//将配置文件解析进来
documents = db.parse(f);

[color=green] //按照bean标签读取参数
NodeList nl = documents.getElementsByTagName("bean");

for (int i = 0; i < nl.getLength(); i++)
{
if (documents.getElementsByTagName("id").item(i) != null)
{
System.out.println(documents.getElementsByTagName("id").item(i).getFirstChild().getNodeValue());
}

}[/color]
//获取配置文件参数
Element rootElement = documents.getDocumentElement();
NodeList children = rootElement.getChildNodes();
int childSize = children.getLength();

for (int i = 0; i < childSize; i++)
{
Node childNode = children.item(i);

if (childNode instanceof Element)
{
Element child = (Element)childNode;

final String nodeName = child.getNodeName();

if ("bean".equals(nodeName))
{
String firstCondition = child.getAttribute("firstCondition");
String className = child.getAttribute("class");
String serviceId = child.getAttribute("id");
}
}
}
}

catch (ParserConfigurationException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}

catch (SAXException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}


这里提供的方法可以解析两种格式的XML文件:
<?xml version="1.0" encoding="UTF-8" ?>

<struts>
<bean serviceId="testExample" firstCondition="Pudge" class="com.kewen.123456" />
<bean serviceId="ZXC" firstCondition="NeverMore" class="com.kewen.123456" />

</struts>


另一种:
<bean>
<serviceId>1234</serviceId>
<firstCondition>puck</firstCondition>
<class>com.kewen.kkkk</class>
</bean>


绿色java代码用于解析第二种xml格式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值