1. 程式人生 > >java io流 數據流 DataInputStream、DataOutputStream、ByteArrayInputStream、ByteArrayOutputStream

java io流 數據流 DataInputStream、DataOutputStream、ByteArrayInputStream、ByteArrayOutputStream

clas mat 分享 col -s 例子 oid 類型 write

技術分享

例子程序:

package io;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;

public class TestDataStream {

    public static void main(String[] args) {
        /**
         * 在內存裏創建一個字節數組,ByteArrayOutputStream這根管道是懟到了內存上
         
*/ ByteArrayOutputStream baos = new ByteArrayOutputStream(); //將基本 Java 數據類型寫入輸出流中 DataOutputStream dos = new DataOutputStream(baos); try { //寫入double類型,8個字節 dos.writeDouble(Math.random()); dos.writeBoolean(true);//布爾類型1個字節 /**
* 相當於這根管道懟到了ByteArrayOutputStream上邊。拿到了字節數組在內存的引用。 */ ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); //輸入流剩余可讀字節數 System.out.println(bais.available());//一共9個字節 DataInputStream dis = new
DataInputStream(bais); System.out.println(dis.readDouble()); System.out.println(dis.readBoolean()); /** * colse之後,內存的字節數組沒了。 */ dos.close(); dis.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }

技術分享

java io流 數據流 DataInputStream、DataOutputStream、ByteArrayInputStream、ByteArrayOutputStream