我正在编写一个带有并行数组的代码,当我读入数据并尝试显示它时,会出现此错误。教我实验室的GA没有看到我的代码有问题,并说我应该在这里试试。这是我的代码,错误就在它之后。我正在使用eclipse。
import java.util.Scanner;
import java.io.File;
import java.io.FileNotFoundException;
public class parallelArrays {
public static void main(String[] args) throws FileNotFoundException {
File cityPopulation = new File("cityPopulationData.txt");
Scanner fileReader = new Scanner(cityPopulation);
fileReader.useDelimiter("[\t|\n]+");
String[] cities = new String[400];
int[] pop2010 = new int[400];
int[] pop2013 = new int[400];
double[] area = new double[400];
int count = getData(fileReader, cities, pop2010, pop2013, area);
displayArrays(cities, pop2010, pop2013, area, count);
largestCity(pop2010, count);
}
public static int getData(Scanner inf, String[] c, int[] pop10, int[] pop13, double[] a) {
int count = 0;
inf.next();
inf.next();
inf.next();
inf.next();
while(inf.hasNext()) {
c[count] = inf.next();
pop10[count] = inf.nextInt();
pop13[count] = inf.nextInt();
a[count] = inf.nextDouble();
count++;
}
return count;
}
public static void displayArrays(String[] c, int[] pop10, int[] pop13, double[] a, int count) {
for(int i = 0; i < count; i++){
System.out.printf("%s \t %d \t %d \t %f", c[i], pop10[i], pop13[i], a[i]);
}
}
public static int largestCity(int[] pop10, int count) {
int lCindex = 0;
for(int i = 1; i < count; i++) {
if(pop10[i] > pop10[lCindex])
lCindex = i;
}
return lCindex;
}
// public static int findGrowth(int[] pop10, int[] pop13, int count, ) {
//
// }
public static int highestDensity(int[] pop10, double[] area, int count) {
int hDindex = 0;
for( int i = 1; i < count; i++) {
if ((pop10[i]/area[i]) > (pop10[hDindex]/area[hDindex]))
hDindex = i;
}
return hDindex;
}
}
例外:
Exception in thread "main" java.io.FileNotFoundException: cityPopulationData.txt (The system cannot find the file specified)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.util.Scanner.<init>(Unknown Source)
at parallelArrays.main(parallelArrays.java:7)
答案 0 :(得分:0)
好的例外是自我解释&#34; java.io.FileNotFoundException&#34;
==&gt;文件cityPopulation =新文件(&#34; cityPopulationData.txt&#34;);
因为您正在使用eclipse,请尝试提供文件的绝对路径,如c:/data/filex.txt等。它将起作用。之后,在项目树中创建一个资源文件夹并将文件放在那里。使用ClassLoader.getresouceAsStream加载文件。当您想要对文件进行相对访问时,可以使用以下方法。您可以在线获取更多有关此方法的信息。
希望这会有所帮助