检查以下评论。
我正在使用......
Scanner input = new Scanner("rates.txt");
应该使用......
Scanner input = new Scanner(new File("rates.txt"));
答案 0 :(得分:0)
更改如下: 在你的代码中
Scanner input = new Scanner("rates.txt");
应该是:
Scanner input = new Scanner(new File("rates.txt"));
将其保留在 try-catch 中,或在main方法中添加抛出异常。
如果找不到文件,也要提供文件的完整路径。
答案 1 :(得分:0)
使用读卡器代替扫描仪。
BufferedReader br = new BufferedReader(new FileReader("rates.txt"));
String line;
while ((line = br.readLine()) != null) {
// parse line here . . .
}
答案 2 :(得分:0)
当您将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