Java第十五章

一.输入/输出流

输入流(Input Stream)与输出流(Output Stream)合称为数据流(Data Stream)

输入输出流的来源和接收者可以是文件、内存、网络连接等。

流是一组有序得数据序列,根据操作得类型,可分为输入流和输出流两种。

I/O(Input/Output,输入,输出)流提供了一条通道程序,可以使用这条通道把源中的字节序列送到目的地。

1.输入流

 InputStream类是字节输入流的抽象类,它是所有字节输入流的父类。InputStream类的具体层次结构如图所示

Reader 类是字符输入流的抽象类,所有字符流的实现都是它的子类,以下为Reader类的具体层次结构

 

2.输出流 

OutputStream类是字节输出流得抽象类,此抽象类是表示输出字节流得所有类得超类。 

OutputStream类的具体层次如图所示

Writer类是字符输出流的抽象类,所有字符输出类的实现都是子类  

Writer类的具体层次如图所示

二.File类 

 1.文件的创造与删除

可以使用File类创建一个文件对象。通常使用以下3种构造方法来创建文件对象

1.File(String pathname)

new File(String pathname)
2.File (String pathname,String child)

new File (String pathname,String child)
3.File (File f,String child)

new File (File f,String child)

 例1.

 

2.获取文件信息 

File类提供了很多方法获取文件本身的信息,其中常用的方法如图

 

例2.

 

三.文件输入/输出流 

程序运行期间,大部分数据都在内存中进行操作,当程序结束或关闭时,这些数据将消失。如果需要将数据永久保存,可使用文件输入/输出流与指定的文件建立连接,将需要的数据永久保存到文件中。

1.FileInoutSteream与FileOutputStream类

例3. 

2.FileReader和FileWriter类 

FileReade类和FileWriter类对应了FileInputStream类和FileOutStream类。FileWriter类顺序地读取文件,只要不关闭流,每次调用read()方法就顺序地读取源中其余的内容,直到源的末尾或流被关闭。 

例4.

四.带缓存的输入/输出流 

1.BufferedInputStream与BufferedOutputStream类

BufferedInputStream类可以对所有InputStream类进行带缓存区的包装以达到性能的优化。

BufferedInputStream类有两个构造方法:

BufferedInputStream(InputStream in)
BufferedInputStream(InputStream in,int size)

使用 BufferedOutputStream 类输出信息和仅用 OutputStream 类输出信息完全一样,只不过BuffcredOutputStream 有一个flush()方法用来将缓存区的数据强制输出完。BufferedOutputStream 类也有两个构造方法:

BufferedOutputStream(OutputStream in)
BufferedOutputStream(OutputStream in,int size)

 2.BufferedReader与BufferedWriter类

BufferedReader类常用方法如下:

read()方法:读取单个字符。
readLine()方法:读取一个文本行,并将其返回为字符串。若无数据可读,则返回null。

BufferedWriter类的方法都返回void。常用方法如下:

writer(String s,int off,int len)方法:写入字符串的某一部分.
flush()方法:刷新该流的缓存。
newLine()方法:写入一个行分隔符。

例5.

 

 

五.数据输入/输出流 

数据输入/输出流(DatalnputStream 类与 DataOutputStream 类)允许应用程序以与机器无关的方式从底层输入流中读取基本 Java 数据类型。也就是说,当读取一个数据时,不必再关心这个数值应当是哪种字节。

例6.

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值