<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Cyh的博客

    Email:kissyan4916@163.com
    posts - 26, comments - 19, trackbacks - 0, articles - 220

    對象與XML的轉換

    Posted on 2009-12-20 20:40 啥都寫點 閱讀(287) 評論(0)  編輯  收藏 所屬分類: J2SE
         本例介紹如何將一個對象輸出到XML文檔,再從XML文檔中讀取到內存,把一個描述學生的對象輸出到XML文檔,然后從XML文檔中讀取學生信息到內存。

          java.beans.XMLEncoder是XML編碼器,它的writeObject方法能把對象以XML的格式輸出到文件中。
          java.beans.XMLDecoder是XML解碼器,它的readObject方法能把XML文檔的內容讀到對象中。注意,它只能解碼用XMLEncoder生成的XML文檔。
          XMLEncoder和XMLDecoder相當于對象的序列化和反序列化,只不過它以XML的格式序列化對象。


    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());
        }

    }


                                                                                                           --    學海無涯
            

    主站蜘蛛池模板: 亚洲国产一区二区视频网站| 久久aⅴ免费观看| jizzjizz亚洲日本少妇| 成人免费毛片内射美女APP | aⅴ在线免费观看| 国产男女猛烈无遮挡免费视频 | 无码乱人伦一区二区亚洲一| 免费无码又爽又刺激网站直播| 国产亚洲高清不卡在线观看| 成人爽a毛片免费| 亚洲永久永久永久永久永久精品| 久久久久成人片免费观看蜜芽| 亚洲一区免费观看| 免费观看AV片在线播放| 亚洲中文字幕在线观看| 99精品免费视品| 97亚洲熟妇自偷自拍另类图片| 成人在线免费看片| 亚洲国产精品网站在线播放 | 又黄又爽的视频免费看| 日本一区二区三区免费高清在线| 最近中文字幕大全中文字幕免费| 亚洲国产精品久久久久秋霞影院| 德国女人一级毛片免费| 日日狠狠久久偷偷色综合免费| 成年丰满熟妇午夜免费视频| 国产亚洲综合一区二区三区| 亚洲综合最新无码专区| 最近中文字幕mv免费高清在线 | 亚洲国产精品无码久久九九| 最近免费mv在线观看动漫 | 无忧传媒视频免费观看入口| 亚洲精品无码不卡在线播HE | 亚洲成熟xxxxx电影| 成年人免费视频观看| 一个人看的免费观看日本视频www 一个人看的免费视频www在线高清动漫 | 黄页免费的网站勿入免费直接进入| 亚洲日韩一区精品射精| 久久影视综合亚洲| 免费人成大片在线观看播放电影| 欧洲亚洲国产清在高|