读取数据的原理(硬盘到内存中)
java程序---->JVM--->OS ----->OS读取数据的方法----->读取文件
字节输入流的使用步骤(重点):
1、创建FileInputStream对象,构造方法中绑定要读取的数据源
2、使用FileInputStream对象中的方法read,读取文件
3、释放资源
package com.baidu.字节输入输出流;
import java.io.FileInputStream;
import java.io.IOException;
/*
int read() 从该输入流读取一个字节的数据。
int read(byte[] b) 从该输入流读取最多 b.length个字节的数据到一个字节数组。
void close() 关闭此文件输入流并释放与流相关联的任何系统资源。
*/
public class InputStream01 {
public static void main(String[] args) throws IOException {
//
FileInputStream fis = new FileInputStream("F:\\develop\\b.txt");
/*
int raad()读取文件中的一个字节并返回,读取到问价你的末尾返回-1
*/
/*int read = fis.read();
System.out.println(read);//97 a
//指针后移
read = fis.read();
System.out.println(read);//98 b
//指针继续后移
read = fis.read();
System.out.println(read);//99 c */
/*
读取文件是一个重复的过程,可以使用for循环优化
不知道文件中有多少字节。
不知道循环次数:使用while
知道循环次数:使用for循环
while循环结束条件,读取到-1的时候结束
*/
/*
布尔表达式(len = fis.read())!=-1
1、fis.read():读取一个字节
2、len = fis.read():把读到的字节赋值给变量len
3、(len = fis.read())!=-1:判断变量是否不等于-1
*/
int len = 0;
while((len = fis.read())!=-1){
System.out.println((char)len);
}
fis.close();
}
}