第十章 Java语言的输入输出与文件处理

10.1.1  流的概念

1).输入输出流

缓冲流(buffered stream)

10.1.2  输入输出流类库

处理数据类型分为两种:一是字节流(byte stream),另一是字符流(character stream),字节流又称为二进制字节流(binary byte stream) 或 位流(bits steam).

java.lang.Object->

InputStream\OutputStream\Reader\Writer\File\RandomAccessFile

InputStream->

FileInputStream\PipedInputStream\FilterInputStream\SequenceInputStream\...\StringBufferInputStream

OutputStream->

FileOutputStream\PipedOutputStream\...\FilterOutputStream

Reader->

PipedReader\BufferedReader\FilterReader\InputStreamReader\...\StringReader

Writer->

PipedWriter\BufferedWriter\FilterWriter\OutputStreamWriter\...\StringWriter

 

->FilterInputStream->

BufferedInputStream\LineNumberInputStream\PushbackInputStream\DataInputStream

->FilterOutputStream->

BufferedOutputStream\DataOutputStream\PrintStream

->BufferedReader->

LineNumberReader

->InputStreamReader->

FileReader

->OutputStreamWriter->

FileWriter

 

其中InputStream\OutputStream\Reader与Writer是抽象类,用于数据流的输入输出;File是稳健类,用于对磁盘文件与目录的管理;RandomAccessFile是随即访问稳健类,用于实现对磁盘文件的随即读写操作.

 

10.2  使用InputStream和OutputStream流类

基本的输入输出流

InputStream的常用方法

public int read()  从输入流中的当前位置读入一个字节(8bit),补充8个全0的高位字节合成一个16位的int(0~255),若输入流中的当前位置没有数据则返回-1.

public int read(byte b[])  从输入流中的当前位置连续读入多个字节保存在数组b[]中,同时返回所读到的字节数.

public int read(byte b[], int off , int len ) 从输入流中的当前位置连续读入len个字节,从数组b[]的第off+1个元素位置处开始存放,同时返回所读到的字节数.

public int available() 返回输入流中可以读取的字节数.

public long skip(long n)  使位置指针从当前位置向后跳过n个字节

public void mark()  在当前位置处做一个记号

public void reset()  将位置指针返回到标记的位置

public void close() 关闭输入流与外设的连接并释放所占用的系统资源.

 

OutputStream类的常用方法

public void write(int b)  将参数b的低位字节写入到输出流

public void write(byte b[])  将字节数组b[]中的全部字节按顺序写入到输入流

public void write(byte b[],int off , int len)  将字节数组b[]中第off+1个元素开始的len个数据,顺序写入到输出流

public void flush()   强制清空缓冲区并执行向外设写操作

public void close()  关闭输出流与外设的连接并释放所占用的系统资源.

 

flush();的说明:将缓冲区的数据写到外设上,强制清空缓冲区并执行外设写操作.

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值