在写这篇文章之前,xxx已经写过了几篇关于改华夏工程主题的文章,想要了解的朋友可以去翻一下之前的文章
这次搞个基金的信息fund.xml放在工程根目录下:
华夏大盘 000011
混合型 http://jingzhi.funds.hexun.com/000011.shtml 华安宏利 040005
股票型 http://jingzhi.funds.hexun.com/040005.shtml
ID还是大写字母的"ID"作attribute。
结构个响应的Java Bean:
package leon.corejava.model;public class Fund { private String name; private String code; private String url; private String type; public String toString(){ return this.code+"\t"+this.name+"\t"+this.url; } //getter and setter //... }
测试类:
每日一道理 有些冷,有些凉,心中有些无奈,我一个人走在黑夜中,有些颤抖,身体瑟缩着,新也在抖动着,我看不清前方的路,何去何从,感觉迷茫,胸口有些闷,我环视了一下周围,无人的街头显得冷清,感到整个世界都要将我放弃。脚步彷徨之间,泪早已滴下……
package leon.corejava.xml;import java.io.File;import java.io.FileWriter;import java.io.IOException;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import leon.corejava.model.Fund;import org.dom4j.Document;import org.dom4j.Element;import org.dom4j.io.OutputFormat;import org.dom4j.io.SAXReader;import org.dom4j.io.XMLWriter;public class FundXMLTest { public static final String ID="ID"; public static void main(String[] args) throws Exception { File xmlFile = new File("fund.xml"); SAXReader reader = new SAXReader(); Document doc = reader.read(xmlFile); Element root = doc.getRootElement(); ListfundList = new ArrayList (); int i=0; for(Iterator iter = root.elementIterator();iter.hasNext();){ Element element = (Element) iter.next(); fundList.add(elementToFund(element)); i++; } for(Fund f : fundList){ System.out.println(f); } //modify element Element e = root.elementByID("0"); e.element("name").setText("华夏大盘精选"); //add new element Element newFund = root.addElement("fund"); newFund.addAttribute(ID, String.valueOf(i)); newFund.addElement("name").setText("中信双利"); newFund.addElement("code").setText("288102"); newFund.addElement("url").setText("http://jingzhi.funds.hexun.com/288102.shtml"); write(doc,new File("new_fund.xml")); } public static Fund elementToFund(Element e){ Fund f = new Fund(); f.setCode(e.element("code").getTextTrim()); f.setName(e.element("name").getTextTrim()); f.setUrl(e.element("url").getTextTrim()); f.setType(e.element("type").getTextTrim()); return f; } public static void write(Document document,File f) throws IOException { // format xml OutputFormat format = OutputFormat.createPrettyPrint(); // format short xml //format = OutputFormat.createCompactFormat(); //not format //XMLWriter writer = new XMLWriter(new FileWriter(f)); //format.setEncoding("GBK"); //format XMLWriter writer = new XMLWriter(new FileWriter(f),format); writer.write(document); /* // format short xml format = OutputFormat.createCompactFormat(); writer = new XMLWriter(System.out, format); */ writer.close(); }}
工程根目录创建出一个新的文件new_fund.xml。
文章结束给大家分享下程序员的一些笑话语录: 一条狗在街上闲逛,看见橱窗里一张告示:「招聘程序员。会编程,有团队精神,至少精通两种语言。均等机会。」
那条狗就进去申请,但是被拒绝了。 「我不能雇一条狗在公司里做事。」经理说。 狗不服气,指着告示上「均等机会」几字抗议。 经理没法,叹了口气,不屑地问道:「你会编程吗?」 那条狗默默地走到电脑前,编了个程序,运作准确。 「你有团队精神吗?」经理问。 那条狗掉头看了看门外,一大群野狗在外面虎视耽耽。 「我真的不能雇狗做这份工作。」经理气急败坏地说。 「就算会编程、有团队精神,但是我需要的雇员至少要能精通两种语言。」 那条狗抬头看着经理说:「喵-噢。」--------------------------------- 原创文章 By 华夏和工程 ---------------------------------