IO流定义与分类

首先流是FIFO一种的数据结构,相当于File->内存,内存->File。

分类及创建流的方法

(一)按照流向分类

(1)输入流         java.io.InputStream

//1.先创建输入流管道in
InputStream in= new FileInputStream("d://abc.txt");

//2.再输入内存之前需要在内存中创建缓存数组,需要在数组中读取内容
byte[] buf=new byte[4];

//3.读取文件内容,调用.read()方法
in.read(buf);

//4.查看数组内容需要将数组转换成字符串类型
System.out.println(new String(buf));

(2)输出流        java.io.Outputstream

//1.先创建输出流out,只能用OutputStream的子类
OutputStream out= new FileOutputStream("d:/xyz.txt");

//2.从内存中往硬盘中输出:输出内容调用.write()方法 .getByte()
on.wtrite("abcdefg".getBytes());

(二)按照处理单元分类

(1)字节流         FileInpurStream/FileoutputStream

        字节流就是将文件内容转换成字节的形式进行传输,因为1个字节等于8个二进制数,

所有字节流可以传输任何数据类型的。

(2)字符流          Reader/Writer

底层是16位的Unicode的编码,只适用于处理字符,文本文件,处理效率相当于字节流高一点

(3)其他流

注意:

1.InputStream/OutputStream/reader/writer 都是抽象类不能直接使用,需要使用其子类例如

      FileInputStream来创建

2.在流中查看文件大小 in.available()方法

3.在文件中查看大小 File.length()方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

爱穿风衣的土豆

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

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

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

打赏作者

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

抵扣说明:

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

余额充值