s-day09-使用字节输入流一次读取一个字节
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
package com.inmind.io_in02;
|
||||
|
||||
import java.io.FileInputStream;
|
||||
import java.io.IOException;
|
||||
|
||||
/*
|
||||
字节输入流以及相关API的介绍
|
||||
在java中使用抽象类InputStream表示字节输入流
|
||||
常用的子类:FileInputStream
|
||||
构造方法:
|
||||
FileInputStream(File file) 通过打开与实际文件的连接来创建一个 FileInputStream ,该文件由文件系统中的 File对象 file命名。
|
||||
FileInputStream(String name) 通过打开与实际文件的连接来创建一个 FileInputStream ,该文件由文件系统中的路径名 name命名。
|
||||
常用方法:
|
||||
void close() 关闭资源
|
||||
int read() 从该输入流读取一个字节的数据。返回值就是字节数据
|
||||
int read(byte[] b) 从字节输入流中将字节数据读取到参数b数组中,返回的值读取的字节个数
|
||||
|
||||
字节输入流的基本使用
|
||||
步骤:
|
||||
1.创建对象
|
||||
2.调用读方法
|
||||
3.释放资源
|
||||
*/
|
||||
public class Demo06 {
|
||||
public static void main(String[] args) throws IOException {
|
||||
/*
|
||||
1.创建字节输入流对象
|
||||
注意:
|
||||
a.创建输入流对象时,文件不存在是报异常java.io.FileNotFoundException: source1.txt
|
||||
b.创建输出流对象是,文件不存在才会新建
|
||||
*/
|
||||
FileInputStream fis = new FileInputStream("source1.txt");
|
||||
/*
|
||||
2.调用读方法(一次读取一个字节)
|
||||
int read() 从该输入流读取一个字节的数据。返回值就是字节数据
|
||||
*/
|
||||
/*int b = fis.read();
|
||||
System.out.println(b);
|
||||
System.out.println((char) b);
|
||||
|
||||
b = fis.read();
|
||||
System.out.println(b);
|
||||
System.out.println((char) b);
|
||||
|
||||
b = fis.read();
|
||||
System.out.println(b);
|
||||
System.out.println((char) b);
|
||||
|
||||
b = fis.read();
|
||||
System.out.println(b);//-1
|
||||
System.out.println((char) b);*/
|
||||
//不停地读取字节数据,直到文件末尾(重点代码)
|
||||
int b;//保存字节输入流读取到的字节数据
|
||||
/*
|
||||
循环条件:(b = fis.read())!=-1
|
||||
执行顺序:
|
||||
1.fis.read():从字节输入流中读取一个字节数据
|
||||
2.b = fis.read():将读取到的字节数据赋值给变量b
|
||||
3.(b = fis.read())!=-1:判断是否读取到字节数据,如果读到那么继续操作
|
||||
*/
|
||||
while ((b = fis.read()) != -1) {
|
||||
System.out.println((char) b);
|
||||
}
|
||||
|
||||
System.out.println("程序结束");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user