ByteArrayOutputStream 类使用实例
(2011-01-01 18:36:27)
标签:
bytearray
outputstream
it
|
分类:
Java项目
|
04 |
public
class Person implements Serializable, ObjectInputValidation { |
06 |
static Map thePeople
= new HashMap(); |
11 |
public Person(String
name, String ss) { |
14 |
thePeople.put(ss,
name); |
17 |
private void readObject(ObjectInputStream in) |
18 |
throws
IOException, ClassNotFoundException
{ |
19 |
in.registerValidation( this ,
5 ); |
20 |
in.defaultReadObject(); |
23 |
public void
validateObject() throws InvalidObjectException { |
24 |
if
(thePeople.containsKey( this .ss))
{ |
25 |
throw
new InvalidObjectException( this .name +
" already exists" ); |
28 |
thePeople.put( this .ss,
this .name); |
32 |
public String
toString() { |
33 |
return
this .name + "\t"
+ this .ss; |
36 |
public static void
main(String[] args) |
37 |
throws
IOException, ClassNotFoundException
{ |
39 |
Person
p1 = new Person( "Rusty" ,
"123-45-5678" ); |
40 |
Person
p2 = new Person( "Beth" , "321-45-5678" ); |
41 |
Person
p3 = new Person( "David" ,
"453-45-5678" ); |
42 |
Person
p4 = new Person( "David" ,
"453-45-5678" ); |
44 |
Iterator
iterator = thePeople.values().iterator(); |
45 |
while
(iterator.hasNext()) { |
46 |
System.out.println(iterator.next()); |
49 |
ByteArrayOutputStream
bout = new ByteArrayOutputStream(); |
50 |
ObjectOutputStream
oout = new ObjectOutputStream(bout); |
58 |
ByteArrayInputStream
bin = new ByteArrayInputStream(bout.toByteArray()); |
59 |
ObjectInputStream
oin = new ObjectInputStream(bin); |
61 |
System.out.println(oin.readObject()); |
62 |
System.out.println(oin.readObject()); |
63 |
System.out.println(oin.readObject()); |
64 |
System.out.println(oin.readObject()); |
66 |
catch
(InvalidObjectException ex) { |
67 |
System.err.println(ex); |
71 |
//
now empty the map and try again |
73 |
bin
= new ByteArrayInputStream(bout.toByteArray()); |
74 |
oin
= new ObjectInputStream(bin); |
76 |
System.out.println(oin.readObject()); |
77 |
System.out.println(oin.readObject()); |
78 |
System.out.println(oin.readObject()); |
79 |
System.out.println(oin.readObject()); |
81 |
catch
(InvalidObjectException ex) { |
82 |
System.err.println(ex); |
86 |
iterator
= thePeople.values().iterator(); |
87 |
while
(iterator.hasNext()) { |
88 |
System.out.println(iterator.next()); |
04 |
public
class Person implements Serializable, ObjectInputValidation { |
06 |
static Map thePeople
= new HashMap(); |
11 |
public Person(String
name, String ss) { |
14 |
thePeople.put(ss,
name); |
17 |
private void readObject(ObjectInputStream in) |
18 |
throws
IOException, ClassNotFoundException
{ |
19 |
in.registerValidation( this ,
5 ); |
20 |
in.defaultReadObject(); |
23 |
public void
validateObject() throws InvalidObjectException { |
24 |
if
(thePeople.containsKey( this .ss))
{ |
25 |
throw
new InvalidObjectException( this .name +
" already exists" ); |
28 |
thePeople.put( this .ss,
this .name); |
32 |
public String
toString() { |
33 |
return
this .name + "\t"
+ this .ss; |
36 |
public static void
main(String[] args) |
37 |
throws
IOException, ClassNotFoundException
{ |
39 |
Person
p1 = new Person( "Rusty" ,
"123-45-5678" ); |
40 |
Person
p2 = new Person( "Beth" , "321-45-5678" ); |
41 |
Person
p3 = new Person( "David" ,
"453-45-5678" ); |
42 |
Person
p4 = new Person( "David" ,
"453-45-5678" ); |
44 |
Iterator
iterator = thePeople.values().iterator(); |
45 |
while
(iterator.hasNext()) { |
46 |
System.out.println(iterator.next()); |
49 |
ByteArrayOutputStream
bout = new ByteArrayOutputStream(); |
50 |
ObjectOutputStream
oout = new ObjectOutputStream(bout); |
58 |
ByteArrayInputStream
bin = new ByteArrayInputStream(bout.toByteArray()); |
59 |
ObjectInputStream
oin = new ObjectInputStream(bin); |
61 |
System.out.println(oin.readObject()); |
62 |
System.out.println(oin.readObject()); |
63 |
System.out.println(oin.readObject()); |
64 |
System.out.println(oin.readObject()); |
66 |
catch
(InvalidObjectException ex) { |
67 |
System.err.println(ex); |
71 |
//
now empty the map and try again |
73 |
bin
= new ByteArrayInputStream(bout.toByteArray()); |
74 |
oin
= new ObjectInputStream(bin); |
76 |
System.out.println(oin.readObject()); |
77 |
System.out.println(oin.readObject()); |
78 |
System.out.println(oin.readObject()); |
79 |
System.out.println(oin.readObject()); |
81 |
catch
(InvalidObjectException ex) { |
82 |
System.err.println(ex); |
86 |
iterator
= thePeople.values().iterator(); |
87 |
while
(iterator.hasNext()) { |
88 |
System.out.println(iterator.next()); |
喜欢
0
赠金笔
加载中,请稍候......