一、解析XML文件
//读取用户名和密码
public static List<String>
getUserInfo(String filePath,String usertype) throws DocumentException{
List<String> user = new ArrayList<String>();
String username = null;
String password = null;
SAXReader reader = new SAXReader();
Document document = reader.read( filePath);
Element root = document.getRootElement();
// System.out.println(root.getName()); //打印根节点名称
// //获取某节点的属性
// String freeuser = root.element("user").attributeValue("type");
// System.out.println( freeuser);
List<Element> childElements = root .elements( "user" );
for(Element element: childElements){
if( element.attributeValue( "type").equals( usertype)){
username = element.element( "username").getText();
password = element.element( "password").getText();
user.add(0, username);
user.add(1, password);
//System.out.println(username );
} else if (element.attributeValue( "type").equals( usertype)){
username = element.element( "username").getText();
password = element.element( "password").getText();
user.add(0, username);
user.add(1, password);
}
}
return user;
}
二、Dom4j生成XMl文件
-
public class Dom4jBuildXml {
public void build(){
try {
//DocumentHelper提供了创建Document对象的方法
Document document = DocumentHelper.createDocument();
//添加节点信息
Element rootElement = document.addElement("users");
//这里可以继续添加子节点,也可以指定内容
rootElement.setText("这个是module标签的文本信息");
Element element = rootElement.addElement("user");
Element nameElement = element.addElement("name");
Element valueElement = element.addElement("password");
Element descriptionElement = element.addElement("description");
nameElement.setText("名称");
nameElement.addAttribute("language", "java");//为节点添加属性值
valueElement.setText("值");
valueElement.addAttribute("language", "c#");
descriptionElement.setText("描述");
descriptionElement.addAttribute("language", "sql server");
System.out.println(document.asXML()); //将document文档对象直接转换成字符串输出
Writer fileWriter = new FileWriter("c:\\user.xml");
//dom4j提供了专门写入文件的对象XMLWriter
XMLWriter xmlWriter = new XMLWriter(fileWriter);
xmlWriter.write(document);
xmlWriter.flush();
xmlWriter.close();
System.out.println("xml文档添加成功!");
} catch (IOException e) {
e.printStackTrace();
}
}