【Java高级特性】I/O流——认识流

1.概述

1.Java程序通过来读写文件。流是指一连串流程的字符,是以先进先出的方式发送和接收数据的通道

2.流分为输入流和输出流输入/输出流是相对于计算机内存来说的。数据存储到内存中,则为输入流;从内存输出数据,则为输出流

3.读文件是指从文件中读取数据到内存中;写文件是指把内存中的数据写入到文件中

4.Java的输出流主要有OutputStream类和Writer类作为基类,输入流主要由InputStream类和Reader类作为基类。在程序中,这些输入/输出流类的对象称为流对象

5.可以通过流对象将内存中的数据以流的方式写入文件,也可以通过流对象将文件中的数据以流的方式读取到内存。

6.构造流对象时往往会和数据源(如文件)联系起来。数据源分为源数据源和目标数据源。输入流关联的是源数据源;输出流关联的是目标数据源。

2.字节流和字符流

输入/输出流分为字节流和字符流。

字节流:8位通用字节流,基本单位是字节。字节流的基类是InputStream类和OutputStream类,这两个类都是抽象类,不能实例化

字符流:16位Unicode字符流,基本单位是Unicode字符。字符流的基类是Reader类和Writer类,这两个类都是抽象类,不能实例化

InputStream类常用方法

InputStream类的常用子类FileInputStream,用于从文件中读取数据

OutputSream类常用方法

 OutputStream类的常用子类FileOutputStream,用于向文件写入数据

Reader类常用方法

 Reader类常用子类BufferedReader,接受Reader对象作为参数,并对其添加字符缓冲器

Writer类常用方法

Writer类的常用子类有BufferedWriter,用于将数据缓冲到字符输出流

3.字符流VS字节流

字符流最适合用来处理字符串和文本,因为它们支持国际上大多数的字符集和语言。

在操作上字节流和字符流还有一个区别,字符流在操作时使用了缓冲区(内部存储器),而字节流在操作时直接操作文件,不会使用缓冲区。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值