我想要做的就是从文件中的数字创建一个数组...我对Java还是很陌生,所以它可能不是最有效的方法,但是我现在只了解有限的知识。
运行它时,我收到以下消息:
Exception in thread "main" java.util.NoSuchElementException: No line found
at java.util.Scanner.nextLine(Scanner.java:1540)
at CreateArray.main(CreateArray.java:27)
这是我对代码的微弱尝试:
import java.io.*;
import java.util.Scanner;
import java.util.ArrayList;
public class CreateArray
{
public static void main(String[] args) throws IOException
{
File file = new File("Numbers.txt");
Scanner inputFile = new Scanner(file);
// Find the number of lines in the file
int count = 0;
while (inputFile.hasNextLine())
{
String str = inputFile.nextLine();
count++;
}
// Create array
double[] numbers = new double[count];
// Add numbers to array
String str;
while (inputFile.hasNextLine());
{
for (int i = 0; i < count; i++)
{
str = inputFile.nextLine();
numbers[i] = Double.parseDouble(str);
}
}
// Display array
for (int i = 0; i < numbers.length; i++)
System.out.print(numbers[i] + " ");
}
}
最佳答案
当您使用扫描仪在代码中写入inputFile.hasNextLine()
时,您实际上已经从文件中读取了一行。正如@tima所说,您已经在第一个while循环中完成了文件的读取。尝试查看此java: about read txt file into array
关于java - 从文件创建数组;得到错误:线程“main”中的异常java.util.NoSuchElementException:未找到行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45310684/