麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

JAVA對象序列化保存為XML文件的工具類

2019-11-18 10:41:02
字體:
來源:轉載
供稿:網友

今天看了看java.beans包,發現了兩個好東西,xmlEncoder和XMLDecoder。發現自己以前把從XML存取對象真是太費力氣啦。做了小工具類,以后可以用用了。

package com.imct.util;

import java.beans.XMLDecoder;
import java.beans.XMLEncoder;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

/**
 * <title>使用XML文件存取可序列化的對象的類</title>
 * <description>提供保存和讀取的方法</description>
 * @author 殷晉
 * <copyright>清華大學汽車工程開發研究院@2005</copyright>
 * @version 1.0
 * 2005-8-5 16:44:49
 */
public class ObjectToXMLUtil
{
 /**
  * 把java的可序列化的對象(實現Serializable接口)序列化保存到XML文件里面,假如想一次保存多個可序列化對象請用集合進行封裝
  * 保存時將會用現在的對象原來的XML文件內容
  * @param obj 要序列化的可序列化的對象
  * @param fileName 帶完全的保存路徑的文件名 
  * @throws FileNotFoundException 指定位置的文件不存在
  * @throws IOException 輸出時發生異常
  * @throws Exception 其他運行時異常
  */
 public static void objectXmlEncoder(Object obj,String fileName)
  throws FileNotFoundException,IOException,Exception
 {  
  //創建輸出文件
  File fo = new File(fileName);
  //文件不存在,就創建該文件
  if(!fo.exists())
  {
   //先創建文件的目錄
      String path = fileName.substring(0,fileName.lastIndexOf('.'));
      File pFile = new File(path);
      pFile.mkdirs();        
  }
  //創建文件輸出流
  FileOutputStream fos = new FileOutputStream(fo);
  //創建XML文件對象輸出類實例
  XMLEncoder encoder = new XMLEncoder(fos);  
  //對象序列化輸出到XML文件
  encoder.writeObject(obj);
  encoder.flush(); 
  //關閉序列化工具
  encoder.close();
  //關閉輸出流
  fos.close();    
 } 
 /**
  * 讀取由objSource指定的XML文件中的序列化保存的對象,返回的結果經過了List封裝
  * @param objSource 帶全部文件路徑的文件全名
  * @return 由XML文件里面保存的對象構成的List列表(可能是一個或者多個的序列化保存的對象) 
  * @throws FileNotFoundException 指定的對象讀取資源不存在
  * @throws IOException 讀取發生錯誤
  * @throws Exception 其他運行時異常發生
  */
 public static List objectXmlDecoder(String objSource)
  throws FileNotFoundException,IOException,Exception
 {
  List objList = new ArrayList();    
  File fin = new File(objSource);
  FileInputStream fis = new FileInputStream(fin);
  XMLDecoder decoder = new XMLDecoder(fis);
  Object obj = null;
  try
  {
   while( (obj = decoder.readObject()) !

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 911精品影院在线观看 | 国产1区2区3区中文字幕 | 黄色香蕉视频 | xnxx 日本19| a视频在线播放 | 日韩黄色片在线观看 | 色婷婷一区二区三区 | 羞羞答答xxdd在线播放 | 成人网在线观看 | 一级做受毛片免费大片 | 色妇视频| 欧美中文在线 | 久久久免费观看完整版 | 九九热精品免费视频 | 精精国产xxxx视频在线野外 | 黄网站免费在线看 | 日韩视频一二区 | 亚洲视频在线免费看 | h色视频在线观看 | 久草在线综合 | 天天干天天透 | 欧美日韩手机在线观看 | 国产三级三级三级三级 | 亚洲视屏 | 激情五月少妇a | avav在线播放| h网站在线观看 | av在线免费观看中文字幕 | 久久精品一区二区三 | 免费一级高清毛片 | 日本在线一区二区 | 日韩黄色片网站 | 亚洲综合一区在线观看 | 毛片午夜 | 在线免费观看欧美 | 91国内精品久久久久免费影院 | 精品三级内地国产在线观看 | 欧美va亚洲| 久久亚洲视频网 | 精品国产一区二区三区四 | 久久亚洲一区二区三区成人国产 |