java 输入/输出流小记 (1)

本文介绍了Java中的IO操作,特别是java.io包中的File类及其用途。File类用于处理文件和目录的操作,如创建、删除、查询文件属性等,但不涉及文件内容的读写。文章还列举了多种字节流和字符流类,包括它们如何实现文件和数据的读写。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在 java.io 包中 File 是一个常用类。这个名字容易产生一些误会。它表示一个文件名
(或目录名),而不是文件本身。文件在不同的操作系统下有不同的命名规则,Java 提供
File 类,通过 File 类隐藏这些名字上的不同。

File 的方法是对文件以一个整体形势进行操作:删除文件、创建目录、列出目录
、查询文件大小和修改日期等。虽然 File 类提供了操作目录和目录下文件的方法,但
File 类没有提供操作文件内容的方法,没法对字符或字进行读写。顺序文件的 I/O 是
通过一个抽象流来实现的。

stream 是一个对象,数据能够顺序的从中读出,或者能够顺序的写入其中。
java.io 包中有 40多个 stream 类。InputStream, OutputStream 和他们各自
的子类都用于读写 字节流 对象(byte , 一个byte 8 位)。 Reader , Writer 和他
们各自的子类用于读写 Unicode 字符流对象(char, 一个字符包含 2个字节)。
除了这些流之外, java.util.zip 包含数据压缩解压缩的数据流类。


[b]字节输入流[/b]

BufferedInputStream

从一个 InputStream 中读取一个缓冲区,然后返回整个缓冲区的内容,使小量读写更
有效。
ByteArrayInputStream

从一个字节数组中顺序读入多个字节

CheckedInputStream
这个 java.util.zip 包中的类计算从 InputStream 中读入内容的校验合

DataInputStream
从一个 InputStream 中读取 java 基本类型的二进制表达形式

FileInputStream
从文件中顺序读入多个字节

FilterInputStream
字节输入流的过滤器类的超类

GZIPInputStream
这个 java.io.zip 包中的类从 InputStream 中读入以 GZIP 形式压缩的内容

InflaterInputStream
GZIPInputStream 和 ZipInputStream 的超类

InputStream
所有字节输入流的超类

ObjectInputStream
从一个字节流读入二进制形式的 Java 对象和基本值,这个类用来反序列化对象。

PipedInputStream
读取写入到它所连接的 PipedOutputStream中的多个字节,在多线程程序中使用

PushbackInputStream
将一个固定大小的“回推缓冲区”添加到输入流中,从而这些字节内容可以是"读不出"
的,在某些解析程序中有用。

SequenceInputStream
从两个或两个以上的输入流中顺序读入多个字节的内容,这些输入流就好像单独的一个
输入流一样。

ZipInputStream
用来解压 ZIP 文件中的多个项目
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值