这个问题之前已经在堆栈溢出问题上被问过几次,我想强调一下,我已经研究了解决方案,但尚未解决我的问题。
我有一个程序应该从文件读取数据并将其存储在数组中。我目前正在运行一些测试,以确保正确读取数据,其中之一是到终端的简单输出。每次我想打印数据时,我总是得到“null”。
为了研究这个问题,我将每个数组元素设置为“”。所以我初始化了它们。现在终端只显示一个空行。文件中的内容似乎没有被读取到数组中?
正在读取的文件内容:
Q1: (A + B)*(A+B) \n 1. A*A + B*B \n 2. A*A +A*B + B*B \n 3. A*A +2*A*B + B*B \n
Q2: (A + B)*(A - B) \n 1. A*A + 2*B*B \n 2. A*A - B*B \n 3. A*A -2*A*B + B*B \n
Q3: sin(x)*sin(x) + cos(x)*cos(x) \n 1. 1 \n 2. 2 \n 3. 3 \n
我如何阅读它(代码片段在方法中):
try
{
int i =0;
String [] line = new String [10];
for (i=0;i<=9;i++)
{
line[i] = "";
}
Scanner scanner = new Scanner(new File("questions.txt"));
scanner.useDelimiter("Q");
i=0;
while (scanner.hasNext())
{
line[i] = scanner.next();
i++;
System.out.println("" + line[i]);
}
}
catch (FileNotFoundException exp)
{
exp.printStackTrace();
}
最佳答案
在 sysOut 之前有一个 i++;
。我想这就是为什么你看不到内容被阅读的原因。尝试切换这两个语句。
关于Java - 从文件读取返回null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28657632/