Java 函式庫中的I/O 資料流工具主要包括:InputStream:抽象輸入流OutputStream:抽象輸出流FileInputStream:從檔案讀取位元組FileOutputStream:向檔案寫入位元組ByteArrayInputStream:從位元組陣列讀取取位元組ByteArrayOutputStream:向位元組數組寫入位元組BufferedInputStream:帶緩衝區的輸入流,提高效能BufferedOutputStream:帶緩衝區的輸出流,提高效能DataInputStream:從輸入流讀取基本資料類型DataOutputStream:向輸出流寫入基本資料型別
簡介
資料流工具在Java 中用來處理二進位數據,在輸入/輸出(I/O) 作業中非常有用。 Java 函數庫提供了多個 I/O 資料流工具,本文將介紹最常用的工具,並提供實戰案例。
常用資料流工具
#工具 | 描述 |
---|---|
InputStream |
抽象輸入流 |
#OutputStream |
抽象輸出流 |
FileInputStream |
從檔案讀取位元組 |
FileOutputStream |
向檔案寫入位元組 |
ByteArrayInputStream |
從位元組數組讀取位元組 |
#ByteArrayOutputStream |
向位元組數組寫入位元組 |
BufferedInputStream |
帶緩衝區的輸入流,提高效能 |
BufferedOutputStream |
帶緩衝區的輸出流,提高效能 |
DataInputStream |
從輸入流讀取基本資料類型 |
DataOutputStream |
向輸出流寫入基本資料型別 |
#實戰案例
讀取文字檔
import java.io.FileInputStream; import java.io.IOException; public class ReadTextFile { public static void main(String[] args) { try (FileInputStream fis = new FileInputStream("myfile.txt")) { // 逐字节读取文件 int c; while ((c = fis.read()) != -1) { System.out.print((char) c); } } catch (IOException e) { e.printStackTrace(); } } }
寫入文字檔案
import java.io.FileOutputStream; import java.io.IOException; public class WriteTextFile { public static void main(String[] args) { try (FileOutputStream fos = new FileOutputStream("myfile.txt")) { // 写入文本 String text = "Hello, world!"; fos.write(text.getBytes()); } catch (IOException e) { e.printStackTrace(); } } }
#從位元組陣列讀取基本資料類型
import java.io.ByteArrayInputStream; import java.io.DataInputStream; import java.io.IOException; public class ReadBasicTypesFromBytes { public static void main(String[] args) { // 定义字节数组并写入基本数据类型 byte[] bytes = {1, 2, 3, 4}; ByteArrayInputStream bis = new ByteArrayInputStream(bytes); DataInputStream dis = new DataInputStream(bis); try { // 读取基本数据类型 int i = dis.readInt(); System.out.println("Int: " + i); } catch (IOException e) { e.printStackTrace(); } } }
#向位元組數組寫入基本資料型別
import java.io.ByteArrayOutputStream; import java.io.DataOutputStream; import java.io.IOException; public class WriteBasicTypesToBytes { public static void main(String[] args) { // 创建字节数组输出流 ByteArrayOutputStream bos = new ByteArrayOutputStream(); DataOutputStream dos = new DataOutputStream(bos); try { // 写入基本数据类型 dos.writeInt(12345); dos.flush(); // 获取字节数组 byte[] bytes = bos.toByteArray(); } catch (IOException e) { e.printStackTrace(); } } }
以上是Java 函數庫中都有哪些常用 I/O 資料流工具?的詳細內容。更多資訊請關注PHP中文網其他相關文章!