📜  java 文件获取字节 - Java (1)

📅  最后修改于: 2023-12-03 15:01:34.010000             🧑  作者: Mango

Java 文件获取字节

在Java中,可以通过多种方式获取文件的字节。这些方式包括读取文件内容到字节数组、使用InputStream和OutputStream读写文件等等。下面将介绍使用Java读取文件字节的几种方式。

读取文件内容到字节数组
import java.io.File;
import java.nio.file.Files;

public class FileByteReader {
    public static byte[] readBytesFromFile(File file) throws Exception {
        return Files.readAllBytes(file.toPath());
    }
}

上述代码通过调用Java的Files.readAllBytes()方法,将文件内容读取到一个字节数组中返回。可以通过以下代码调用该方法:

byte[] fileBytes = FileByteReader.readBytesFromFile(new File("file.txt"));
使用InputStream读取文件内容
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

public class InputStreamByteReader {
    public static byte[] readBytesFromFile(File file) throws Exception {
        InputStream inputStream = new BufferedInputStream(new FileInputStream(file));
        byte[] bytes = new byte[(int) file.length()];
        inputStream.read(bytes);
        inputStream.close();
        return bytes;
    }
}

上述代码通过创建一个BufferedInputStream来包装一个FileInputStream,实现从文件中读取字节数据。可以通过以下代码调用该方法:

byte[] fileBytes = InputStreamByteReader.readBytesFromFile(new File("file.txt"));
使用OutputStream写入字节到文件
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;

public class OutputStreamByteWriter {
    public static void writeBytesToFile(File file, byte[] bytes) throws Exception {
        OutputStream outputStream = new BufferedOutputStream(new FileOutputStream(file));
        outputStream.write(bytes);
        outputStream.close();
    }
}

上述代码通过创建一个BufferedOutputStream来包装一个FileOutputStream,实现将字节数据写入文件。可以通过以下代码调用该方法:

OutputStreamByteWriter.writeBytesToFile(new File("file.txt"), fileBytes);

以上三种方法都可以有效地获取一个文件的字节数据。在实际应用中可以根据需要选择适合自己的方式来读写文件。