本文概述
- 使用BufferedReader类
- 使用扫描仪类
- BufferedReader类
- 扫描仪类
public String readLine() throws IOException
该方法读取一行文本。它返回一个包含行内容的字符串。该行必须由换行符(“ \ n”)或回车符(“ \ r”)中的任何一个终止。
使用BufferedReader类逐行读取文件的示例
【如何在Java中逐行读取文件】在下面的示例中, FileReader类读取Demo.txt。 BufferedReader类的readLine()方法逐行读取文件, 并将每行追加到StringBuffer后面, 然后换行。然后, 将StringBuffer的内容输出到控制台。
import java.io.*;
public class ReadLineByLineExample1{public static void main(String args[]){try{File file=new File("Demo.txt");
//creates a new file instanceFileReader fr=new FileReader(file);
//reads the fileBufferedReader br=new BufferedReader(fr);
//creates a buffering character input streamStringBuffer sb=new StringBuffer();
//constructs a string buffer with no charactersString line;
while((line=br.readLine())!=null){sb.append(line);
//appends line to string buffersb.append("\n");
//line feed }fr.close();
//closes the stream and release the resourcesSystem.out.println("Contents of File: ");
System.out.println(sb.toString());
//returns a string that textually represents the object}catch(IOException e){e.printStackTrace();
}}}
输出:
文章图片
使用扫描仪类 与BufferedReader类相比, Java Scanner类提供了更多的实用程序方法。 Java Scanner类提供nextLine()方法, 以方便一行一行地显示文件内容。 nextLine()方法返回与readLine()方法相同的String。 Scanner类还可以读取InputStream形式的文件。
使用Scanner类逐行读取文件的示例
import java.io.*;
import java.util.Scanner;
public class ReadLineByLineExample2{public static void main(String args[]){try{//the file to be opened for readingFileInputStream fis=new FileInputStream("Demo.txt");
Scanner sc=new Scanner(fis);
//file to be scanned//returns true if there is another line to readwhile(sc.hasNextLine()){System.out.println(sc.nextLine());
//returns the line that was skipped}sc.close();
//closes the scanner}catch(IOException e){e.printStackTrace();
}}}
输出:
文章图片
推荐阅读
- 如何在Java中保留字符串而不使用反转功能
- 如何在Java中读取XML文件
- 路由基础之OSPF NSSA区域
- 流媒体(RTMP 协议完全解析)
- MySQL对JOIN做了那些不为人知的优化
- [ 数据结构 -- 手撕排序算法第七篇 ] 堆排序(中)堆排序的优化算法
- Go Web 编程入门: 动态模板
- Java零基础_零基础学Java必备的学习笔记开发环境搭建-常见DOS命令
- Go单体服务开发最佳实践