java - 运行 BufferedReader 类的 readLine() 函数不返回任何内容
问题描述
我正在使用 Mac OS,我在其上编写了以下 java 代码:
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.FileReader;
class random9
{
public static void main(String[] args) throws Exception
{
String line = null;
BufferedReader br = new BufferedReader(new FileReader("/Users/xyz/Desktop/xyz.txt"));
br.readLine();
}
}
当我运行此文件时,尽管程序成功运行而没有任何错误,但我没有得到输出。
(PS:这是我在堆栈溢出问题上提出的第一个问题,所以如果我的问题措辞不正确,我深表歉意。)
解决方案
您正在通过文件从文件中读取一行,BufferedReader
但您没有使用它,所以什么也没有发生
你需要用它来存储和制作一些东西,比如打印它
String firstLine = br.readLine();
System.out.println("First line is" + firstLine);
//or simply
System.out.println(br.readLine());
要读取具有多行的文件,您可以不间断地读取新行,直到它为 null :
String line;
while((line = br.readLine())!=null){
System.out.println(line); // or something else
}
推荐阅读
- amazon-web-services - 使用带有 spring-cloud-stream-binder-aws-kinesis 的 dynamodb 流
- java - RestTemplate x Feign Client 有什么区别?
- mongodb - 根据可能不存在的字段查询和排序mongo中的大量数据
- typescript - 修复没有不必要的泛型
- c++ - 将包含 main 函数的 C 程序包装到 C++ 类中,
- maven - 尝试执行 mvn clean install 时出现问题
- python - Python - 累积总和达到某个阈值
- c - c - 将 csv 文件中的浮点值写入新文件并遍历字段
- sparql - SPARQL 获取名称/文本而不是标识符作为结果
- sql - 如何查找事务表中仍处于活动状态的记录