首頁  >  文章  >  Java  >  Java 函數庫中都有哪些常用 I/O 資料流工具?

Java 函數庫中都有哪些常用 I/O 資料流工具?

WBOY
WBOY原創
2024-04-30 13:18:01575瀏覽

Java 函式庫中的I/O 資料流工具主要包括:InputStream:抽象輸入流OutputStream:抽象輸出流FileInputStream:從檔案讀取位元組FileOutputStream:向檔案寫入位元組ByteArrayInputStream:從位元組陣列讀取取位元組ByteArrayOutputStream:向位元組數組寫入位元組BufferedInputStream:帶緩衝區的輸入流,提高效能BufferedOutputStream:帶緩衝區的輸出流,提高效能DataInputStream:從輸入流讀取基本資料類型DataOutputStream:向輸出流寫入基本資料型別

Java 函数库中都有哪些常用 I/O 数据流工具?

Java 函式庫中的常用I/O 資料流工具

簡介

資料流工具在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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn