Java中OutputStream使用
1. void write(int b)
java
outputStream.write(65); // 写入字节 'A'
write(int b)
方法将指定的字节写入输出流。参数 b
是一个整数,表示要写入的字节数据。实际写入的是 b
的最低8位。这个方法通常用于写入单个字节的数据。
示例用途: 将单个字节数据写入到输出流中。
java
OutputStream outputStream = new FileOutputStream("output.txt");
outputStream.write(65); // 写入字节 'A'
outputStream.close();
2. void write(byte[] b)
java
byte[] data = "Hello, world!".getBytes();
outputStream.write(data); // 写入字节数组
write(byte[] b)
方法将字节数组 b
中的所有字节写入输出流。这个方法通常用于批量写入数据。
示例用途: 将整个字节数组的数据写入到输出流中。
java
OutputStream outputStream = new FileOutputStream("output.txt");
byte[] data = "Hello, world!".getBytes();
outputStream.write(data); // 写入字节数组的数据
outputStream.close();
3. void write(byte[] b, int off, int len)
java
byte[] data = "Hello, world!".getBytes();
outputStream.write(data, 0, 5); // 写入字节数组的前5个字节
write(byte[] b, int off, int len)
方法将字节数组 b
中从偏移量 off
开始的 len
个字节写入输出流。这个方法允许您指定要写入的数据片段。
示例用途: 写入字节数组的部分数据到输出流中。
java
OutputStream outputStream = new FileOutputStream("output.txt");
byte[] data = "Hello, world!".getBytes();
outputStream.write(data, 0, 5); // 写入 "Hello" 的前5个字节
outputStream.close();
4. void flush()
java
outputStream.flush();
flush()
方法强制将缓冲区中的数据输出到目的地。通常,输出流会在缓冲区填满或关闭时自动刷新,但有时需要手动调用此方法确保数据立即写入目的地。
示例用途: 在写入一部分数据后,确保数据被立即写入到输出流中。
java
OutputStream outputStream = new FileOutputStream("output.txt");
outputStream.write(65); // 写入字节 'A'
outputStream.flush(); // 确保 'A' 立即写入到文件中
outputStream.close();
5. void close()
java
outputStream.close();
close()
方法关闭输出流并释放与之关联的任何系统资源。在使用完输出流后调用此方法是非常重要的,以确保所有数据都已写入目的地并释放相关资源。
示例用途: 在完成数据写入后关闭输出流。
java
OutputStream outputStream = new FileOutputStream("output.txt");
outputStream.write("Hello, world!".getBytes());
outputStream.close(); // 关闭输出流