根据对象生成XML文档. 使用Java提供的java.beans.XMLEncoder和java.beans.XMLDecoder类 一、生成的xml文件如下:AStudent.xml <? xml version="1.0" encoding="UTF-8" ?> < java version ="1.5.0" class ="java.beans.XMLDecoder" > < object class ="StudentBean" > < void property ="age" > < int > 15 </ int > </ void > < void property ="gender" > < string > male </ string > </ void > < void property ="name" > < string > wamgwu </ string > </ void > < void property ="phone" > < string > 55556666 </ string > </ void > </ object > </ java > 二、描述学生的JavaBean /** */ /** * 描述学生的JavaBean*/ public class StudentBean ... {// 学生姓名 private String name;// 学生性别 private String gender;// 学生年龄 private int age;// 学生电话号码 private String phone;public String toString()...{ StringBuffer sb = new StringBuffer(); sb.append("姓名:").append(this.name).append("; "); sb.append("性别:").append(gender).append("; "); sb.append("年龄:").append(age).append("; "); sb.append("电话:").append(phone);return sb.toString(); }/** *//** * @return 返回 age。*/public int getAge() ...{return age; }/** *//** * @param age 要设置的 age。*/public void setAge(int age) ...{this.age = age; }/** *//** * @return 返回 gender。*/public String getGender() ...{return gender; }/** *//** * @param gender 要设置的 gender。*/public void setGender(String gender) ...{this.gender = gender; }/** *//** * @return 返回 name。*/public String getName() ...{return name; }/** *//** * @param name 要设置的 name。*/public void setName(String name) ...{this.name = name; }/** *//** * @return 返回 phone。*/public String getPhone() ...{return phone; }/** *//** * @param phone 要设置的 phone。*/public void setPhone(String phone) ...{this.phone = phone; }} 三、主程序 import java.beans.XMLDecoder; import java.beans.XMLEncoder; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; /** */ /** * 根据对象生成XML文档. * 使用Java提供的java.beans.XMLEncoder和java.beans.XMLDecoder类。 * 这是JDK 1.4以后才出现的类*/ public class Object2XML ... {/** *//** * 对象输出到XML文件 * @param obj 待输出的对象 * @param outFileName 目标XML文件的文件名 * @return 返回输出XML文件的路径 * @throws FileNotFoundException*/public static String object2XML(Object obj, String outFileName)throws FileNotFoundException ...{// 构造输出XML文件的字节输出流 File outFile = new File(outFileName); BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(outFile));// 构造一个XML编码器 XMLEncoder xmlEncoder = new XMLEncoder(bos);// 使用XML编码器写对象 xmlEncoder.writeObject(obj);// 关闭编码器 xmlEncoder.close();return outFile.getAbsolutePath(); }/** *//** * 把XML文件解码成对象 * @param inFileName 输入的XML文件 * @return 返回生成的对象 * @throws FileNotFoundException*/public static Object xml2Object(String inFileName)throws FileNotFoundException ...{// 构造输入的XML文件的字节输入流 BufferedInputStream bis = new BufferedInputStream(new FileInputStream(inFileName));// 构造一个XML解码器 XMLDecoder xmlDecoder = new XMLDecoder(bis);// 使用XML解码器读对象 Object obj = xmlDecoder.readObject();// 关闭解码器 xmlDecoder.close();return obj; }public static void main(String[] args) throws IOException ...{// 构造一个StudentBean对象 StudentBean student = new StudentBean(); student.setName("wamgwu"); student.setGender("male"); student.setAge(15); student.setPhone("55556666");// 将StudentBean对象写到XML文件 String fileName = "AStudent.xml"; Object2XML.object2XML(student, fileName);// 从XML文件读StudentBean对象 StudentBean aStudent = (StudentBean)Object2XML.xml2Object(fileName);// 输出读到的对象 System.out.println(aStudent.toString()); }} 运行结果:C:java > java Object2XML姓名:wamgwu; 性别:male; 年龄: 15 ; 电话: 55556666