下面举一个实例来使用FileInputStream类与FileOutputSteam类实现文件的读取与写入功能。
使用FileInputStream与FileOutputStream类实现文件的读取与写入功能。 使用FileOutputStream类向文件word.txt写入信息,然后通过FileInputStream类将文件中的数据读取到控制台上。
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
public class FileTest3 {
/*
使用FileInputStream与FileOutputStream类实现文件的读取与写入功能。
使用FileOutputStream类向文件word.txt写入信息,然后通过FileInputStream类将文件中的数据读取到控制台上。
*/
public static void main(String[] args) {
// 1 . 创建文件对象。
File file = new File("word.txt");
// 2 . 捕捉异常。
try{
// 3 . 创建FileOutputStream类对象。
FileOutputStream fileOutputStream = new FileOutputStream(file);
// 4 . 创建byte型数组。
byte buy[] = "我有一只小毛驴,但我从来也不骑。".getBytes();
// 5 . 将数组中的信息写入到文件中。
fileOutputStream.write(buy);
// 6 . 将流关闭。
fileOutputStream.close();
}catch (Exception e){
// 7 . 输出异常信息。
e.printStackTrace();
}
try {
// 8 . 创建FileInputStream类对象。
FileInputStream fileInputStream = new FileInputStream(file);
// 9 . 创建byte数组。
byte byt[] = new byte[1024];
// 10 . 从文件中读取信息。
int len = fileInputStream.read(byt);
System.out.println("该文件的信息为:" + new String(byt,0,len));
// 11 . 将流关闭,
fileInputStream.close();
}catch (Exception e){
// 12 . 输出异常信息。
e.printStackTrace();
}
}
}
PS:虽然Java在程序结束时自动关闭所有打开的流,但当使用完流后,显式地关闭所有打开的流仍然是一个好习惯。一个被打开的流有可能会用尽系统资源,这取决于平台和实现。如果没有将打开的流关闭,当另一个程序试图打开另一个流时,可能会得不到需要的资源。