標籤:構造 注意 puts hello write 輸入資料流 匯入 沒有 test
Java學習重點之一:OutputStream 位元組輸出資料流的使用
FileOutPutStream:子類,寫出資料的通道
步驟:
1.擷取目標檔案
2.建立通道(如果原來沒有目標檔案,則會自動建立一個)
3.寫入資料 write()
4.釋放資源
注意:
(1)如果目標檔案不存在,那麼會自己建立一個目標檔案
(2)如果目標檔案存在,先將裡面的資料清空,再寫入資料
(3)想在原有的資料上寫入資料,則在建立通道的時候使用 構造方法:
OutPutStream(File file,Boolean append),boolean值為true則可以
(4)用 write(int a)方法寫入資料,雖然接收的是int,但實際上只有一個位元組的資料
(操作的是低八位的,其他的全部丟掉)
//會自動匯入一些包import java.io.File;import java.io.FileOutputStream;import java.io.IOException;
//方式一
1 public static void writeData() throws IOException{ 2 //1.找目標檔案 3 File file = new File("C:\\Users\\bigerf\\Desktop\\檔案夾\\writeTest.java"); 4 5 //2.建立一個通道 6 FileOutputStream outputStream = new FileOutputStream(file); 7 8 //3.開始寫入資料, 9 int a = 10; // int 型 4個位元組 10 outputStream.write(a); //注意這裡每次只能輸出一個位元組11 outputStream.write(‘b‘); // char 類型12 outputStream.write(5); 13 14 // 0000-0000 0000-0000 0000-0001 1111-1111 == 51115 int b = 511 ; //大於八位(9位)16 outputStream.write(b); //實際結果 255,但沒有顯示17 18 int c = 63; //小於八位(6位)19 outputStream.write(c); //亂碼20 21 //4.關閉資源22 outputStream.close();23 }
//方式二
1 public static void writeData2() throws IOException{ 2 //1.找目標檔案 3 File file = new File("C:\\Users\\bigerf\\Desktop\\檔案夾\\writeTest2.java"); 4 5 //2.建立一個通道,(如果不存在路徑中的檔案,則會在這一步建立的檔案) 6 //new FileOutputStream(file,true); /true表示在原來文本的基礎上寫入文本(反之則會先清空再寫入) 7 FileOutputStream outputStream = new FileOutputStream(file,true); 8 9 //3.創鍵一個位元組數組10 String str = "hello word";11 //將字串變為位元組數組12 byte[] b = str.getBytes();13 14 //4.寫入資料15 outputStream.write(b); //hello word16 17 //5.關閉資源18 outputStream.close();19 20 }
陌陌說: 輸入資料流與輸出資料流可以實現對檔案的拷貝,不妨試著實現 (先將路徑檔案的資料拷貝寫入到位元組數組,再從位元組數組寫出道路徑檔案) |
java IO流 之 輸出資料流 OutputString()