一、什麼是Java OutputStream
Java OutputStream是一個抽象類,表示輸出位元組流的所有類的超類。OutputStream類的主要作用是將數據寫入到輸出流中。它提供了一些基本的方法來寫入數據,如write(byte[] b)、write(byte[] b, int off, int len)、write(int b)等。
Java提供了多種OutputStream的具體實現類,便於在不同的場景下選擇適合的輸出流。例如,FileOutputStream可以將數據寫入到文件中,ByteArrayOutputStream可以將數據寫入到內存中。
二、使用Java OutputStream輸出文件
1. 輸出到文件
要將數據寫入到文件中,可以使用FileOutputStream類。
// 創建文件輸出流 FileOutputStream fos = new FileOutputStream("output.txt"); // 寫入數據 fos.write("Hello World!".getBytes()); // 關閉輸出流 fos.close();
以上代碼會將字元串”Hello World!”寫入到名為output.txt的文件中。
2. 輸出到控制台
如果要將數據輸出到控制台,可以使用System.out流。
// 創建位元組數組輸出流 ByteArrayOutputStream baos = new ByteArrayOutputStream(); // 將數據寫入到位元組數組輸出流中 baos.write("Hello World!".getBytes()); // 輸出到控制台 System.out.println(baos.toString());
以上代碼會將字元串”Hello World!”輸出到控制台。
3. 輸出到網路
如果要將數據發送到網路中,可以使用Socket類。
// 創建套接字,並連接到指定主機和埠號 Socket socket = new Socket("www.example.com", 80); // 創建輸出流 OutputStream os = socket.getOutputStream(); // 寫入數據 os.write("GET / HTTP/1.1\r\n".getBytes()); os.write("Host: www.example.com\r\n".getBytes()); os.write("\r\n".getBytes()); // 關閉輸出流和套接字 os.close(); socket.close();
以上代碼會向www.example.com發送一個HTTP GET請求,獲取網站的首頁。
三、OutputStream的常用方法
OutputStream類提供了一些常用的方法,如下表所示:
方法 | 描述 |
write(byte[] b) | 將位元組數組b的所有位元組寫入到輸出流中。 |
write(byte[] b, int off, int len) | 將位元組數組b中從off位置開始的len個位元組寫入到輸出流中。 |
write(int b) | 將一個位元組寫入到輸出流中。 |
flush() | 將緩衝區的數據寫入到輸出流中。 |
close() | 關閉輸出流。 |
四、小結
通過Java OutputStream,我們可以將數據寫入到不同的輸出流中,包括文件、控制台和網路等。
值得注意的是,在使用OutputStream時,一定要及時關閉輸出流,否則可能會導致文件未被正常關閉或數據未被完整發送等問題。
原創文章,作者:LLTL,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/148344.html