java 函数库中的 i/o 数据流工具主要包括:inputstream:抽象输入流outputstream:抽象输出流fileinputstream:从文件读取字节fileoutputstream:向文件写入字节bytearrayinputstream:从字节数组读取字节bytearrayoutputstream:向字节数组写入字节bufferedinputstream:带缓冲区的输入流,提高性能bufferedoutputstream:带缓冲区的输出流,提高性能datainputstream:从输入流读取基本数据类型dataoutputstream:向输出流写入基本数据类型

简介
数据流工具在 Java 中用来处理二进制数据,在输入/输出 (I/O) 操作中非常有用。Java 函数库提供了多个 I/O 数据流工具,本文将介绍最常用的工具,并提供实战案例。
常用数据流工具
立即学习“Java免费学习笔记(深入)”;
| 工具 | 描述 |
|---|---|
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中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号