ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeByte(1);
oos.writeDouble(1.0);
oos.writeObject("康健");
byte [] bytes = bos.toByteArray();
System.out.println(bytes.length);
InputStream bis = new ByteArrayInputStream(bytes);
ObjectInputStream ois = new ObjectInputStream(bis);
System.out.println(ois.readByte());
System.out.println(ois.readDouble());
Object obj = ois.readObject();
System.out.println( "obj : " + obj);
2 爲什麼網絡傳輸如 用字節流 而不用 字符流
==================我們還可以看到:============
Reader類的read()方法返回類型爲int :作爲整數讀取的字符(佔兩個字節共16位),範圍在
0 到 65535 之間 (0x00-0xffff),如果已到達流的末尾,則返回 -1
inputStream的read()雖然也返回int,但由於此類是面向字節流的,一個字節佔8個位,所以返回 0 到 255 範圍內的 int 字節值。如果因爲已經到達流末尾而沒有可用的字節,則返回值 -1。因此對於不能用0-255來表示的值就得用字符流來讀取!比如說漢字...至此,有些人可能就會產生一個問題:既然返回結果只能在0-255之間的值,那何返回byte型的呢?
這個問題提得很好,我先頂你一下,可惜本人現在也沒搞懂,不過本人會急時補充!
還有爲什麼 bytes 能 還原成相應的對象???
爲什麼??? 爲什麼哈