ITPub博客

首页 > 应用开发 > Java > java jdom xml 最精简的建立,读取,修改方式

java jdom xml 最精简的建立,读取,修改方式

原创 Java 作者:gxbgxb 时间:2007-11-08 17:24:24 0 删除 编辑


/*
* 新建xml文件
*/
public void createXML() {
File fi=new File(xmlPath);
if(!(fi.exists())){
System.out.println("file is exist");
return ;
}
String textXml = null;
textXml = "" +
" 用户登陆系统" +//" " +
" hws" +
" 2007-11-08" +
" 1.0" +
" " +
" liuwy" +
" 25f9e794323b453885f5181f1b624d0b" +
" 2007-11-08 10:40:33" +
"
" +
"
";
Reader in= new StringReader(textXml);
SAXBuilder builder = new SAXBuilder();
document=null;
try {
document = builder.build(in);
Format format = Format.getCompactFormat();
format.setEncoding("UTF-8"); //设置xml文件的字符为UTF-8 or gb2312
format.setIndent(" "); //设置xml文件的缩进为4个空格
XMLOutputter outputter = new XMLOutputter(format);
outputter.output(document,new FileOutputStream("config.xml"));
}
catch (Exception ex) {
ex.printStackTrace();
}
}

/*
* 读取xml文件

*/
public boolean getLogin(String user,String pass){
List li=null;
SAXBuilder builder=new SAXBuilder();
try{
document=builder.build(new File(xmlPath));
Element root=document.getRootElement();
li=root.getChildren("ROW");
Iterator ii=li.iterator();
while(ii.hasNext()){ //显示节点列表
Element root2=(Element) ii.next();
if(root2.getChildText("name").equals(user) && root2.getChildText("pass").equals(pass) ){
System.out.println("找到 "+user+" 的密码:"+root2.getChildText("pass"));
return changXML(root2);
}
}
}catch (Exception e){e.printStackTrace();return false;}
return true;
}

/*
* 修改节点
*/
private boolean changXML(Element root2){
try{
root2.getChild("pass").setText(MD5.MD(root2.getChildText("pass")));
Date da = new Date();
SimpleDateFormat si=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
XMLOutputter outputter=new XMLOutputter();
root2.getChild("date").setText(si.format(da));
outputter.output(document,new FileOutputStream(xmlPath));
return true;
}catch(Exception e){
e.printStackTrace();
return false;
}
}
写了一天才搞定,真晕!!

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/790981/viewspace-981339/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 初学MemberShip
下一篇: 数据库备份
请登录后发表评论 登录
全部评论
  • 博文量
    20
  • 访问量
    337507