JavaSE I/O流day13
第一章 IO概述
1.1 什么是IO
Java中I/O操作主要是指使用java.io包下的内容,进行输入,输出操作。输入也叫读取数据,输出也叫写出数据。
1.2 I/O的分类
根据数据的流向分为:输入流和输出流
- 输入流:把数据从其他设备上读取到内存中的流
- 输出流:把数据从内存中写出到其他设备上的流
格局数据类型分为:字节流和字符流
第二章 字节流
2.1 一切皆为字节
一切文件数据(文本,图片,视频等)在存储时,都是以二进制数字的形式保存;都是一个一个的字节,那么传输时一样如此。
2.2字节输出流(OutputStream)
java.io.OutputStream抽象类是表示字节输出流的所有类的超类,将指定的字节信息写出到目的地,他定义了字节输出流的基本共性功能方法。
- 文件存储的原理
2.4 字节输入流(InputStream)
public void close()throws IOException//关闭此输入流并释放与该流关联的所有系统资源
public abstract int read()throws IOException//从输入流中读取数据的下一个字节
public int read(byte[] b)throws IOExceptio//n从输入流中读取一定数量的字节,并将其存储在缓冲区数组 b 中。以整数形式返回实际读取的字节数
- InputStream读取
package io.File.InputStream;
import java.io.FileInputStream;
import java.io.IOException;
public class Demo01 {
public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("D:\\PassPath\\Demo01.txt");
int len = 0;
while ((len=fis.read())!=-1){
System.out.print((char) len+"\t");
}
fis.close();
}
}
结果:
a b c
- read读取过程
package io.File.InputStream;
import java.io.FileInputStream;
import java.io.IOException;
public class Demo02 {
public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("D:\\PassPath\\Demo02.txt");
byte[] bytes = new byte[1024];//存储读取的多少个字节
int len = 0;//记录每一次读取的个数
while ((len=fis.read(bytes))!=-1){
System.out.print(new String(bytes,0,len)+"\t");
}
fis.close();
}
}
结果:
好好学习,天天向上!!
- read(byte)读取过程