ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); OutputStreamWriter outputStreamWriter = new OutputStreamWriter(byteArrayOutputStream); int size = byteArrayOutputStream.size(); System.out.println("寫入之前爲:" + size); outputStreamWriter.write("我是一個魔鬼"); // outputStreamWriter.flush(); // outputStreamWriter.close(); int size1 = byteArrayOutputStream.size(); System.out.println("寫入之後爲:" + size1);
當這樣執行時,輸出前後都爲0,這是因爲
OutputStreamWriter 相當於包裝了一層,並沒有給
ByteArrayOutputStream對象寫入內容,需要
OutputStreamWriter 調用flush()或close()方法即可