在这个实例中,我们将学习使用Java中的各种类来读取文件的内容。
要理解此示例,您应该了解以下Java编程主题:
示例1:Java程序使用BufferedInputStream读取文件
import java.io.BufferedInputStream; import java.io.FileInputStream; class Main { public static void main(String[] args) { try { //创建FileInputStream FileInputStream file = new FileInputStream("input.txt"); //创建BufferedInputStream BufferedInputStream input = new BufferedInputStream(file); //从文件读取第一个字节 int i = input .read(); while (i != -1) { System.out.print((char) i); // 从文件中读取下一个字节 i = input.read(); } input.close(); } catch (Exception e) { e.getStackTrace(); } } }
输出结果
First Line Second Line Third Line Fourth Line Fifth Line
在上面的示例中,我们使用BufferedInputStreamClass从名为input.txt的文件中逐行读取。
注意:为了运行此文件,您应该在当前工作目录中有一个名为input.txt的文件。
示例2:Java程序使用BufferedReader读取文件
import java.io.FileReader; import java.io.BufferedReader; class Main { public static void main(String[] args) { //创建一个字符数组 char[] array = new char[100]; try { // 创建一个FileReader FileReader file = new FileReader("input.txt"); //创建BufferedReader BufferedReader input = new BufferedReader(file); //读取字符 input.read(array); System.out.println("文件中的数据: "); System.out.println(array); //关闭阅读器 input.close(); } catch(Exception e) { e.getStackTrace(); } } }
输出结果
文件中的数据: First Line Second Line Third Line Fourth Line Fifth Line
在上面的示例中,我们使用BufferedReader类读取名为input.txt的文件。
示例3:使用扫描器读取文件的Java程序
import java.io.File; import java.util.Scanner; class Main { public static void main(String[] args) { try { //创建一个新的文件对象 File file = new File("input.txt"); //创建一个与该文件关联扫描器对象 Scanner sc = new Scanner(file); //读取文件中的每一行并将其打印出来 System.out.println("使用扫描器读取文件:"); while(sc.hasNextLine()) { System.out.println(sc.nextLine()); } //关闭扫描器 sc.close(); } catch (Exception e) { e.getStackTrace(); } } }
输出结果
使用扫描器读取文件: First Line Second Line Third Line Fourth Line Fifth Line
在上面的示例中,我们创建了一个名为file的File类的对象。 然后,我们创建了一个与该文件相关联的Scanner对象。
在这里,我们使用了扫描器方法
hasNextLine() - 如果文件中存在下一行,则返回true
nextLine() - 从文件返回整行
要了解有关扫描器的更多信息,请访问Java Scanner。