gpt4 book ai didi

java - 如何在 Java 中使用 BufferedReader

转载 作者:IT老高 更新时间:2023-10-28 20:45:04 26 4
gpt4 key购买 nike

对不起,如果这是一个明显的问题,但我似乎无法理解。我正在为数据结构类(class)做作业。它涉及从一个简单的 .dat 文件中提取数据。我们以前从未在 Java 中使用过任何文件访问选项,所以教授只是给了我们该部分的工作代码。

一个名为 FileReadExample 的类创建一个新的 BufferedReader 对象,打开一个文件,然后应该踢出一堆关于该文件的数据。但我根本无法访问任何数据。

在一个单独的 testMain 文件中,我创建了一个名为 fr 的新 FileReadExample 对象,然后尝试打印出像 fr 这样的内容.readLine() 从那里,但它告诉我没有这样的方法。

我确定我错过了一些非常简单的东西。

教授的代码:

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;

public class FileReadExample
{
public static void main(String[] args)
{
System.out.println("got here");
try
{
BufferedReader in = new BufferedReader(new FileReader(new File("sample-file.dat")));
System.out.println("File open successful!");

int line = 0;
for (String x = in.readLine(); x != null; x = in.readLine())
{
line++;
System.out.println(x);
if (line <= 3)
{
String[] tokens = x.split(" ");
System.out.println("Number of tokens in line " + line + ": " + tokens.length);
System.out.println("The tokens are:");
for (String token : tokens)
{
System.out.println(token);
}
}
else
{
String[] tokens = x.split("\\|");
System.out.println("Number of tokens in line " + line + ": " + tokens.length);
System.out.println("The tokens are:");
for (String token : tokens)
{
System.out.println(token);
}
Integer[] values = new Integer[tokens.length];
Integer sum = 0;
for (int i = 0; i < tokens.length; i++)
{
sum += Integer.parseInt(tokens[i]);
}
System.out.println("Sum: " + sum);
}
}
} catch (IOException e)
{
System.out.println("File I/O error!");
}
}
}

谢谢。

最佳答案

试试这个来读取文件:

BufferedReader reader = null;

try {
File file = new File("sample-file.dat");
reader = new BufferedReader(new FileReader(file));

String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}

} catch (IOException e) {
e.printStackTrace();
} finally {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}

关于java - 如何在 Java 中使用 BufferedReader,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16265693/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com