公共の 最終 ボイドのwriteObject(オブジェクトX)がスロー IOExceptionが
公共の 最後のオブジェクトのreadObject()がスローにIOException、 ClassNotFoundExceptionが
パブリック クラス従業員は、実装したjava.io.Serializable { 公共の文字列の名前を、 パブリック文字列のアドレス。 公共 過渡 int型SSN。 公共 int型の数。 公共 のボイドMAILCHECK() { System.out.printlnは( + "にチェックメーリングリスト" 名前 + "" +のアドレス); } }
輸入 java.io. * ; パブリック クラスSerializeDemo { 公共 静的 ボイドメイン(文字列[]引数) { 従業員E = 新しい従業員()。 e.name = "Reyanアリ" 。 e.address = "Phokkaクアン、Ambehtaピア" 。 e.SSN = 11122333 ; e.number = 101 。 試す { のFileOutputStream fileOut = 新しいのFileOutputStream( "を/ tmp / employee.ser" ); うちのObjectOutputStream= 新しいObjectOutputStreamの(fileOut)。 out.writeObject(E); out.close(); fileOut.close(); System.out.printf(「直列化されたデータは/tmp/employee.serに保存されます」); } キャッチ(例外:IOException I) { i.printStackTrace()。 } } }
輸入 java.io. * ; パブリック クラスDeserializeDemo { 公共 静的 ボイドメイン(文字列[]引数) { 従業員E = NULL ; 試す { FileInputStreamのfileIn = 新しい FileInputStreamを( "を/ tmp / employee.ser" ); 中のObjectInputStream = 新しいObjectInputStreamの(fileIn)。 E = (従業員)in.readObject(); in.close(); fileIn.close(); } キャッチ(IOExceptionをi)を { i.printStackTrace()。 返します。 } キャッチ(ClassNotFoundExceptionがc)は { のSystem.out.println( "Employeeクラスが見つかりません" )。 c.printStackTrace(); 返します。 } のSystem.out.println( "非直列化従業員..." )。 System.out.println( "名:" + e.name)。 System.out.println( "アドレス:" + e.address)。 System.out.println( "SSN:" + e.SSN)。 System.out.println( "番号:" + e.number)。