文件专属——FileInputStream
文件专属:
java.io. FileInputStream
java.io. FileOutputstream
java.io.FileReader
java.io. FileWriter
一、FileInputStream介绍
1.FileInputStream——文件字节输入流。任何类型文件都可以采用这个流来读。
2.以字节的方式,完成输入(读)的操作(硬盘---->内存)
二、使用步骤
接下来会用该流读取一个文件内容作为展示案例,介绍该流的使用
1.被读取文件展示及文件位置
为了便于理解,文件中仅有a b c d e f五个英文小写字符
位于工程Project的根,方便使用相对路径
2.框架搭建
框架搭建:
package IO;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class FileInputStream01 {
public static void main(String[] args) {
FileInputStream fis =null;
try {
fis = new FileInputStream("temp");
} catch (FileNotFoundException e) {
e.printStackTrace();
}finally {
if (fis != null) {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
3.方法使用介绍——read()
4.代码实现
package IO;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class FileInputStreamTest01 {
public static void main(String[] args) {
// 创建文件输入流
FileInputStream fis = null;
try {
// 创建文件字节输入流对象
fis = new FileInputStream("temp") ;
// 开始读
int readData = fis.read();//这个方法的返回值是:读取到的“字节”本身
System.out.println(readData);//97
readData = fis.read();
System.out.println(readData);//98
readData = fis.read();
System.out.println(readData);//99
readData = fis.read();
System.out.println(readData);//100
readData = fis.read();
System.out.println(readData);//101
readData = fis.read();
System.out.println(readData);//102
// 已经读到文件末尾了,再读的时候读取不到任何数据返回-1
readData = fis.read();
System.out.println(readData);//-1
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally{
//在finally语句块当中确保流一定关闭。
if(fis != null){//避免空指针异常
//关闭流的前提:流不是空。流是null时没必要关闭。
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
执行结果展示
总结
以上就是今天要介绍的内容,为方面理解,本文只是初步展示了FileInputStream中read()方法的简单使用,该方法的使用有很多可简化的方法,若有需要可阅读下文:
链接: https://blog.csdn.net/m0_57497737/article/details/118659263.