求一java操作XML文档基本实例!!!在线等!!
刚做一个小项目,用到了使用dom4j操作XML文档,我身边没有关于xml开发的书籍!上网看了一些,还是没看清楚!现特向高手寻求一个小例子。完成几个基本操作,我想看一下!!...
刚做一个小项目,用到了使用dom4j操作XML文档,我身边没有关于xml开发的书籍!上网看了一些,还是没看清楚!现特向高手寻求一个小例子。完成几个基本操作,我想看一下!!基本就这样,建立一个java程序,一个存储学生基本信息的xml文档,xml文档中包括学号,姓名,性别就好。然后再java程序写一个方法,提示输入学生某项信息,比如姓名,然后从xml中读取出来这个学生的信息显示给用户就好!!当然提供一个添加学生信息方法,和一个删除方法就最好了!!
特别注意,必须用dom4j jar文件包,我的开发工具myeclipse。给我一个可以运行的工程,关键地方多一点注释。谢谢了!邮箱:369069422@qq.com
急用!!!!!! 展开
特别注意,必须用dom4j jar文件包,我的开发工具myeclipse。给我一个可以运行的工程,关键地方多一点注释。谢谢了!邮箱:369069422@qq.com
急用!!!!!! 展开
2个回答
展开全部
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import org.dom4j.Document;
import org.dom4j.DocumentFactory;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
public class WriterXMLDemo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Document doc = DocumentFactory.getInstance().createDocument();
doc.addComment("Create persons.xml");
// 添加根元素
Element myRoot = doc.addElement("persons");
// 添加根元素的第一个子元素
Element onePerson = myRoot.addElement("person");
// 添加第一个人的姓名、年龄元素
Element oneName = onePerson.addElement("name");
Element oneAge = onePerson.addElement("age");
// 添加第一个人的姓名、年龄元素的文本值
oneName.setText("abc");
oneAge.setText("20");
// 添加第二个人
Element twoPerson = myRoot.addElement("person");
twoPerson.addAttribute("name", "two");
twoPerson.addAttribute("age", "30");
try {
PrintWriter out = new PrintWriter(new FileWriter("d:/persons.xml"));
// out.println("kkkkkkkkkkk");
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("gb18030");
XMLWriter xmlOut = new XMLWriter(out, format);
xmlOut.write(doc);
out.close();
xmlOut.close();
System.out.println("=========success=======");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//_______________________________********************________________________________
/*import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentFactory;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class ReaderXMLDemo {*/
/**
* @param args
*/
/**
public static void main(String[] args) {
// TODO Auto-generated method stub
SAXReader xmlReader = new SAXReader();
try {
Document doc = xmlReader.read("d:/persons.xml");
// 得到根元素
Element myRoot = doc.getRootElement();
// 得到根元素下所有名字为person的子元素
List<Element> persons = myRoot.elements("person");
// 得到第一个人
Element onePerson = persons.get(0);
// List<Element> oneElements = onePerson.elements();
// 得到第一个人下的名称元素
// Element oneName = oneElements.get(0);
Element oneName = onePerson.element("name");
// oneName.elementByID(arg0)
// 得到第一个人的名字值
String oneNameValue = oneName.getText();
System.out.println("oneName=====>" + oneNameValue);
Element twoPerson = persons.get(1);
String twoNameValue = twoPerson.attributeValue("name");
System.out.println(twoNameValue);
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}*/
import java.io.IOException;
import java.io.PrintWriter;
import org.dom4j.Document;
import org.dom4j.DocumentFactory;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
public class WriterXMLDemo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Document doc = DocumentFactory.getInstance().createDocument();
doc.addComment("Create persons.xml");
// 添加根元素
Element myRoot = doc.addElement("persons");
// 添加根元素的第一个子元素
Element onePerson = myRoot.addElement("person");
// 添加第一个人的姓名、年龄元素
Element oneName = onePerson.addElement("name");
Element oneAge = onePerson.addElement("age");
// 添加第一个人的姓名、年龄元素的文本值
oneName.setText("abc");
oneAge.setText("20");
// 添加第二个人
Element twoPerson = myRoot.addElement("person");
twoPerson.addAttribute("name", "two");
twoPerson.addAttribute("age", "30");
try {
PrintWriter out = new PrintWriter(new FileWriter("d:/persons.xml"));
// out.println("kkkkkkkkkkk");
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("gb18030");
XMLWriter xmlOut = new XMLWriter(out, format);
xmlOut.write(doc);
out.close();
xmlOut.close();
System.out.println("=========success=======");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//_______________________________********************________________________________
/*import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentFactory;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class ReaderXMLDemo {*/
/**
* @param args
*/
/**
public static void main(String[] args) {
// TODO Auto-generated method stub
SAXReader xmlReader = new SAXReader();
try {
Document doc = xmlReader.read("d:/persons.xml");
// 得到根元素
Element myRoot = doc.getRootElement();
// 得到根元素下所有名字为person的子元素
List<Element> persons = myRoot.elements("person");
// 得到第一个人
Element onePerson = persons.get(0);
// List<Element> oneElements = onePerson.elements();
// 得到第一个人下的名称元素
// Element oneName = oneElements.get(0);
Element oneName = onePerson.element("name");
// oneName.elementByID(arg0)
// 得到第一个人的名字值
String oneNameValue = oneName.getText();
System.out.println("oneName=====>" + oneNameValue);
Element twoPerson = persons.get(1);
String twoNameValue = twoPerson.attributeValue("name");
System.out.println(twoNameValue);
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}*/
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询