黑马程序员-自己总结的java学习笔记(7)IO流

黑马学习博客七号:IO

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------

流是一组有序的数据序列,根据操作的类型可以分为输入和输出两种。IO流提供了一条通道程序,可以使用这条通道把源中的字节序列送到目的地。

Java语言定义了许多类专门负责各种方式的输入输出,这些类都被放在java.io包中。其中,所有的输入流类都是抽象类InputStream或抽象类Reader的子类。而所有输出流都是抽象类OutputStream或抽象类Writer

1:输入/输出流

InputStream

AudioInputStream

 

ByteArrayInputStream

 

StringBufferInputStream

 

FileInputStream

 

FilterInputStream

BufferedInputStream

DataInputStream

PushbackInputStream

InputStream

 

ObjectInputStream

 

SequenceInputStream

 

PipedInputStream

 

Read():从输入留读取数据的下一个字节。返回0-255范围内的int字节值。如果因为已经到末尾而没有可用字节,则返回-1.

Readbyte[] b)从输入流中读取一定长度的字节,并以整数的形式返回字节数。

Markint readlimit)在输入流的当前位置放置一个标记。Readlimit参数告知此输入留在标记位置失效之前允许读取的字节数。

Reset()将输入指针返回到之前所做的标记处。

Skiplong n)跳过输入流上n个字节并返回实际跳过的字节数。

markSupported()判断当前流是否支持mark reset操作。

Close()关闭流。

Reader

CharArrayReader

 

BufferedReader

LineNumberReader

FilterReader

PushBackReader

InputStreamReader

FileReader

PipedReader

 

StringReader

 

 

 

 

 

OutputStream

ByteArrayOutputStream

 

FileOutputStream

 

FilterOutputStream

BufferedOutputStream

DataOutputStream

...

ObjectOutputStream

OutputStream

OutputStream

 

PipedOutputStream

 

Write(int b)将指定字节写入此输出流。

Writebyte[] b)将b个字节从指定的byte数组写入此输出流。

Write(byte[] b, int off, int len)将指定byte数组中从偏移量off开始的len个字节写入此输出流。

Flush()彻底完成输出并清空缓存区。(刷新)

Close()关闭输出流。

Writer

BufferedWriter

 

CharArrayWriter

 

FilterWriter

 

OutputStreamWriter

FileWriter

PipedWriter

 

PrintWriter

 

StringWriter

 

 

2File

File类是代表磁盘文件本身的对象。File类定义了一些与平台无关的方法来操作文件。可以通过调用File类中的方法,实现创建,删除,重命名等操作。

FileString pathname

FileString parentString child

FileFile f , String child

 

boolean exists() 测试此抽象路径名表示的文件或目录是否存在。 

String getName() 返回由此抽象路径名表示的文件或目录的名称。

String getParent() 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。 

File getParentFile() 返回此抽象路径名父目录的抽象路径名;如果此路径名没有指定父目录,则返回 null。 

 

FileInputStreamFileOutputStream都用来操作磁盘文件。

FileReaderFileWriter,避免使用字节流读取汉字时可能导致的乱码现象。

 

3:带缓存的输入/输出流

对类进行带缓存区的包装以达到性能的优化。

BufferedInputStreamInputStream in)带32个字节的缓存流。

BufferedInputStreamInputStream inint size)自定义缓存区大小。

BufferedOutputStreamOutputStream in

BufferedOutputStreamOutputStream inint size

BufferedReader

BufferedWriter

 

 

 

4:数据输入/输出流

允许应用程序以与机器无关的方式从底层输入留中读取基本java类型。

DataInputStreamInputStream in

DataOutputStreamOutputStream out

 

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------详细请查看: www.itheima.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值