检查下面的评论。
我在用...
Scanner input = new Scanner("rates.txt");
应该用...
Scanner input = new Scanner(new File("rates.txt"));
检查下面的评论。
我在用...
Scanner input = new Scanner("rates.txt");
应该用...
Scanner input = new Scanner(new File("rates.txt"));
使用阅读器而不是扫描仪。
BufferedReader br = new BufferedReader(new FileReader("rates.txt"));
String line;
while ((line = br.readLine()) != null) {
// parse line here . . .
}
当您将 String 传递给 Scanner 构造函数时,您是在告诉它输入将来自 String 本身。您应该使用 File 对象或等效的东西。这是:
import java.util.Scanner;
import java.io.File;
import java.io.IOException;
public class TestFile
{
public static void main(String[] args)
{
Scanner input = null;
try
{
input = new Scanner(new File("rates.txt"));
}
catch (IOException ioe)
{
ioe.printStackTrace();
}
int numRows = 7;
int numColumns = 7;
Double[][] ratesArray = new Double[numRows][numColumns];
while(input.hasNext())
{
for(int i = 0; i < ratesArray.length; i++)
{
for(int j = 0; j < ratesArray[i].length; j++)
{
ratesArray[i][j] = input.nextDouble();
System.out.print(ratesArray[i][j] + "\t");
} // for j
System.out.print("\n");
} // for i
} // while
input.close();
} // main()
} // class TestFile
更改如下:在您的代码中
Scanner input = new Scanner("rates.txt");
应该:
Scanner input = new Scanner(new File("rates.txt"));
将其保留在try-catch中或在 main 方法中添加throws Exception 。
如果找不到文件,还要给出文件的完整路径。