Java將對象保存到文件中再從文件中讀取對象的方法推薦
Java語言只能將實現了Serializable接口的類的對象保存到文件中,利用如下方法即可:
public static void writeObjectToFile(Object obj) { File file =new File(""); FileOutputStream out; try { out = new FileOutputStream(file); ObjectOutputStream objOut=new ObjectOutputStream(out); eObject(obj); h(); e(); tln("write object success!"); } catch (IOException e) { tln("write object failed"); tStackTrace(); } }
參數obj一定要實現Serializable接口,否則會拋出erializableException異常。另外,如果寫入的'對象是一個容器,例如List、Map,也要保證容器中的每個元素也都是實現 了Serializable接口。例如,如果按照如下方法聲明一個Hashmap,並調用writeObjectToFile方法就會拋出異常。但是如果是Hashmap
Object obj=new Object(); //failed,the object in map does not implement Serializable interface HashMap
2.從文件中讀取對象
可以利用如下方法從文件中讀取對象
public static Object readObjectFromFile() { Object temp=null; File file =new File(""); FileInputStream in; try { in = new FileInputStream(file); ObjectInputStream objIn=new ObjectInputStream(in); temp=Object(); e(); tln("read object success!"); } catch (IOException e) { tln("read object failed"); tStackTrace(); } catch (ClassNotFoundException e) { tStackTrace(); } return temp; }
讀取到對象後,再根據對象的實際類型進行轉換即可。
以上這篇Java將對象保存到文件中/從文件中讀取對象的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。
-
2017上半年計算機二級Java練習題及答案
計算機等級證書是我們找工作的敲門磚,現在越來越多人重視計算機等級考試。下面是本站小編為大家帶來的2017上半年計算機二級Java練習題及答案,希望對大家的學習有幫助!一、單選題1、結構化程序設計主要強調的是______。A、程序的規模B、程序的易讀性C、程序的執...
-
java的String=a; a==null和a.equals(null)這兩個判斷有什麼區別
1、String的==與equal()在對字符串的相等判斷,==判斷的是地址是否相同,equal()判斷的是字符值是否相同。大多數時候==跟equal()的結果都是相同的。這是因為String對象是不變模式的,如果你不是明確地new一個String對象,Java對於String對象的保存默認的是會把新生成...
-
Java基本元素詳解
生活呆以是甜的,也可以是苦的,但不能是沒味的。你可以勝利,也可以失敗,但你不能屈服,以下是小編為大家搜索整理了Java基本元素詳解,希望能給大家帶來幫助!更多精彩內容請及時關注我們應屆畢業生考試網!第二章基本元素第一章總結:一平台&JDK&JRE&JVM&A...
-
linux下執行java程序的sh腳本教程
文章主要介紹了linux下執行java程序的sh腳本,僅供參考,但是設置的時候環境變量是最重要的,我就是環境變量一直不對,總是按網上查到的來,不明白怎麼回事,才一直出錯,其實環境變量就是你要執行的java程序所在的位置。接下來是小編為大家收集的linux下執行java程序的sh腳...