Java之IO流分类及其基本方法

一、IO流及其分类

IO流分类可以分为以下几类:
1、文件字节流:FileInputStream、FileOutputStream
2、文件字符流:FileReader、FileWiter
3、转换流:InputStreamReader、OutputStreamWriter
4、缓冲流:BufferedReader、BufferedWriter
5、二进制流:DataInputStream、DataOutputStream
6、对象流:ObjectInputStream、ObjectOutputStream
下面我将介绍其基本方法。

二、FileInputStream方法:

1、int available() :返回一个剩余的字节数的估计,可以从这个输入流读取(或跳过),而不阻塞该输入流的方法的下一次调用。
2、void close() :关闭此文件输入流并释放与流关联的任何系统资源。
3、protected void finalize() :确保该文件输入流的 close方法被调用时,没有对它的引用。
4、FileChannel getChannel() :返回与此文件输入流有关的独特的 FileChannel对象。
5、FileDescriptor getFD() :返回表示实际的文件在文件系统中的 FileInputStream使用的连接的 FileDescriptor对象。
6、int read() :从这个输入流读取一个字节的数据。
7、int read(byte[] b) :读到 b.length从输入流到字节数组数据字节。
8、int read(byte[] b, int off, int len) :读到 len从输入流到字节数组数据字节。
9、long skip(long n) :跳过并丢弃 n字节输入流中的数据。

三、FileOutputStream方法

1、void flush() :刷新数据输出流。
2、int size() :返回柜台 written电流值,这个数据写入输出流的字节数为止。
3、void write(byte[] b, int off, int len) :写 len字节指定字节数组中的起始偏移量 off当前输出流。
4、void write(int b) :将指定的字节(论证 b的低八位)的底层输出流。
5、void writeBoolean(boolean v) :写一个 boolean当前输出流作为一个字节的值。
6、void writeByte(int v) :写了 byte当前输出流作为一个字节的值。
7、void writeBytes(String s) :将字符串写入到基础的输出流作为字节序列。
8、void writeChar(int v) :写一个 char当前输出流作为一个双字节值,高字节优先。
9、void writeChars(String s) :将一个字符串写入底层输出流,作为一个字符序列。
10、void writeDouble(double v) :将双参数到一个 long使用 doubleToLongBits方法在类 Double,然后写道, long值基本的输出流的字节的数量,高字节优先。
11、void writeFloat(float v) :将浮点型参数的 int使用 floatToIntBits方法在类 Float,然后写道, int值基本为4字节输出流量,高字节优先。
12、void writeInt(int v) :写一个 int当前输出流为四个字节,高字节优先。
13、void writeLong(long v) :写一个 long当前输出流为八个字节,高字节优先。
14、void writeShort(int v) :写一个 short当前输出流的两个字节,高字节优先。
15、void writeUTF(String str) :一个字符串写入到输出流的潜在使用在一个机器无关的方式 modified UTF-8编码。

四、FileReader方法

1、FileReader(File file) :创建一个新的 FileReader,给予 File读。
2、FileReader(FileDescriptor fd) :创建一个新的 FileReader,给予 FileDescriptor读。
3、FileReader(String fileName) :创建一个新的 FileReader,给定要读取的文件的名称。

五、FileWiter方法

1、FileWriter(File file) :构建了一个文件对象FileWriter对象。
2、FileWriter(File file, boolean append) :构建了一个文件对象FileWriter对象。
3、FileWriter(FileDescriptor fd) :构建了一个文件描述符关联的FileWriter对象。
4、FileWriter(String fileName) :构造给定文件名的FileWriter对象。
5、FileWriter(String fileName, boolean append) :构造FileWriter对象给出一个文件名与一个布尔值,指示是否附加写入的数据。

六、InputStreamReader方法

1、int available() :返回一个可以从这个输入流读取(或跳过)的字节数的估计值,而不阻塞该输入流的下一个方法的调用。
2、void close() :关闭此输入流并释放与流关联的任何系统资源。
3、void mark(int readlimit) :标记此输入流中的当前位置。
4、boolean markSupported() :如果输入流的支持 mark和 reset方法。
5、abstract int read() :从输入流读取下一个数据字节。
6、int read(byte[] b) :读取一定数量的字节从输入流并存入缓冲区阵列 b。
7、int read(byte[] b, int off, int len) :读到 len字节从输入流读入字节数组数据。
8、void reset() :重新定位该流在时间的 mark方法的位置上呼吁这个输入流。
9、long skip(long n) :跳过并丢弃 n字节从输入流中的数据。

七、OutputStreamWriter方法

1、void close() :关闭此输出流并释放与此流关联的任何系统资源。
2、void flush():刷新输出流,使缓存数据被写出来。
3、void write(byte[] b):写 b.length字节从指定的字节数组的输出流。
4、void write(byte[] b, int off, int len) :写 len字节指定字节数组中的偏移 off开始到输出流。
5、abstract void write(int b) :将指定的字节写入该输出流中。

八、BufferedReader方法

1、void close() :关闭流并释放与它相关联的任何系统资源。
2、Stream lines() :返回一个 Stream,其中的元素是线从这 BufferedReader读。
3、void mark(int readAheadLimit) :标记流中的当前位置。
4、boolean markSupported() :告诉这是否流支持的mark()操作它。
5、int read() :读取单个字符。
6、int read(char[] cbuf, int off, int len) :将字符读入一个数组的一部分。
7、String readLine() :读一行文本。
8、boolean ready() :告诉是否该流已准备好阅读。
9、void reset() :将流到最近的标记。
10、long skip(long n) :跳过的字符。

九、BufferedWriter方法

1、void close() :关闭流,冲洗它。
2、void flush() :冲流。
3、void newLine() :写行分隔符。
4、void write(char[] cbuf, int off, int len) :写入一个字符数组的一部分。
5、void write(int c) :写一个字符。
6、void write(String s, int off, int len) :写入字符串的一部分。

十、DataInputStream方法

1、int read(byte[] b) :读取一定数量的字节从包含输入流并存入缓冲区阵列 b。
2、int read(byte[] b, int off, int len) :读到 len从包含输入流读入字节数组数据字节。
3、boolean readBoolean() :DataInput的 readBoolean方法一般相同。
4、byte readByte() : DataInput的 readByte方法一般相同。
5、char readChar() : DataInput的 readChar方法一般相同。
6、double readDouble() : DataInput的 readDouble方法一般相同。
7、float readFloat() : DataInput的 readFloat方法一般相同。
8、void readFully(byte[] b) :DataInput的 readFully方法一般相同。
9、void readFully(byte[] b, int off, int len) :DataInput的 readFully方法一般相同。
10、int readInt() :DataInput的 readInt方法一般相同。
11、String readLine() :通过BufferedReader.readLine()方法。
12、long readLong() :DataInput的 readLong方法一般相同。
13、short readShort() :DataInput的 readShort方法一般相同。
14、int readUnsignedByte() :DataInput的 readUnsignedByte方法一般相同。
15、int readUnsignedShort() :DataInput的 readUnsignedShort方法一般相同。
16、String readUTF() :DataInput的 readUTF方法一般相同。
17、static String readUTF(DataInput in) :从流 in一个Unicode字符串的编码格式在 modified UTF-8表示读取;这个字符串是作为一个 String返回。
18、int skipBytes(int n) :DataInput的 skipBytes方法一般相同。

十一、DataOutputStream方法

1、void flush() :刷新数据输出流。
2、int size() :返回控制台 written电流值,这个数据写入输出流的字节数为止。
3、void write(byte[] b, int off, int len) :写 len字节指定字节数组中的起始偏移量 off当前输出流。
4、void write(int b) :将指定的字节( b的低八位)的底层输出流。
5、void writeBoolean(boolean v) :写一个 boolean当前输出流作为一个字节的值。
6、void writeByte(int v) :写了 byte当前输出流作为一个字节的值。
7、void writeBytes(String s) :将字符串写入到基础的输出流作为字节序列。
8、void writeChar(int v) :写一个 char当前输出流作为一个双字节值,高字节优先。
9、void writeChars(String s) :将一个字符串写入底层输出流,作为一个字符序列。
10、void writeDouble(double v) :将双参数到一个 long使用 doubleToLongBits方法在类 Double, long值基本的输出流的字节的数量,高字节优先。
11、void writeFloat(float v) :将浮点型参数的 int使用 floatToIntBits方法在类 Float,然后写道, int值基本为4字节输出流量,高字节优先。
12、void writeInt(int v) :写一个 int当前输出流为四个字节,高字节优先。
13、void writeLong(long v) :写一个 long当前输出流为八个字节,高字节优先。
14、void writeShort(int v) :写一个 short当前输出流的两个字节,高字节优先。
15、void writeUTF(String str) :一个字符串写入到输出流的潜在使用在一个机器无关的方式 modified UTF-8编码。

十二、ObjectInputStream方法

1、int available() :返回可以不阻塞读取的字节数。
2、void close() :关闭输入流。
3、void defaultReadObject() :从该流中读取当前类的非静态和非瞬态字段。
4、protected boolean enableResolveObject(boolean enable) :使流能够允许从流中读取的对象被替换。
5、int read() :读取一个字节的数据。
6、int read(byte[] buf, int off, int len) :读入一个字节数组。
7、boolean readBoolean() :在布尔值中读取。
8、byte readByte() :读取一个8位字节。
9、char readChar() :读取一个16位字符。
10、protected ObjectStreamClass readClassDescriptor() :从序列化流中读取类描述符。
11、double readDouble() :读一个64位的双。
12、ObjectInputStream.GetField readFields() :从流中读取持久字段,并使它们可用名称命名。
13、float readFloat() :读取一个32位浮点。
14、void readFully(byte[] buf) :读取字节,阻塞,直到所有的字节都读。
15、void readFully(byte[] buf, int off, int len) :读取字节,阻塞,直到所有的字节都读。
16、int readInt() :读取一个32位int。
17、long readLong() :读一个64位长的。
18、Object readObject() :从对象输入流对象。
19、protected Object readObjectOverride() :这种方法被称为对象,通过构建保护对象使用无参数构造函数受信任的子类。
20、short readShort() :读一个16位的短字符。
21、protected void readStreamHeader() :readstreamheader方法是提供让子类来读取和验证自己的流头。
22、Object readUnshared() :读取对象输入流“独享”的对象。
23、int readUnsignedByte() :读取一个无符号的8位字节。
24、int readUnsignedShort() :读取一个无符号的16位短字符。
25、String readUTF() :读 modified UTF-8格式字符串。
26、void registerValidation(ObjectInputValidation obj, int prio) :在返回图形之前注册一个要验证的对象。
27、protected 类<?> resolveClass(ObjectStreamClass desc) :加载指定的流类描述的本地类等价。
28、protected Object resolveObject(Object obj) :这种方法将允许受信任的子类对象输入流用另一个来代替在反序列化期间。
29、protected 类<?> resolveProxyClass(String[] interfaces) :返回实现代理类描述符中命名的接口的代理类;
30、int skipBytes(int len) :跳过的字节。

十三、ObjectOutputStream方法

1、protected void annotateClass(类<?> cl) :子类可以实现这种方法,以允许将类数据存储在流中。
2、protected void annotateProxyClass(类<?> cl) :子类可以实现这种方法来存储流中的自定义数据以及动态代理类的描述符。
3、void close() :关闭流。
4、void defaultWriteObject() :将当前类的非静态和非瞬态字段写入该流。
5、protected void drain() :在ObjectOutputStream的任何缓冲的数据流失。
6、protected boolean enableReplaceObject(boolean enable) :使流能够替换流中的对象。
7、void flush() :冲流。
8、ObjectOutputStream.PutField putFields() :检索用于将要写入流的缓冲持久字段的对象。
9、protected Object replaceObject(Object obj) :这种方法将允许受信任的子类对象来代替一个物体对另一个序列化期间。
10、void reset() :重置将忽略已写入流的任何对象的状态。
11、void useProtocolVersion(int version) :在写入流时指定要使用的流协议版本。
12、void write(byte[] buf) :写入一个字节数组。
13、void write(byte[] buf, int off, int len) :写入字节数组的字节数。
14、void write(int val) :写一个字节。
15、void writeBoolean(boolean val) :写一个布尔值。
16、void writeByte(int val) :写入一个8位字节。
17、void writeBytes(String str) :写入字符串作为一个字节序列。
18、void writeChar(int val) :写入一个16位字符。
19、void writeChars(String str) :写一个字符串作为字符序列。
20、protected void writeClassDescriptor(ObjectStreamClass desc) :写入指定的类描述的对象。
21、void writeDouble(double val) :写一个64位双精度。
22、void writeFields() :将缓冲区写到流中。
23、void writeFloat(float val) :写一个32位浮点数。
24、void writeInt(int val) :写一个32位int。
25、void writeLong(long val) :写一个64位长整型。
26、void writeObject(Object obj) :写入指定的对象的对象。
27、protected void writeObjectOverride(Object obj) :用子类重写默认的writeObject方法。
28、void writeShort(int val) :写一个16位的短整型。
29、protected void writeStreamHeader() :writestreamheader方法提供子类可以附加或在自己的头的流。
30、void writeUnshared(Object obj) :写一个“独享”的对象的对象。
31、void writeUTF(String str) :原始数据写在 modified UTF-8格式字符串。

  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

绝域时空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值