扫描仪没有';我看不到Java文件
我真的不明白是什么问题,但我的扫描仪就是看不到我传递的文件。我试着将文件移动到src,但仍然不起作用。代码如下:扫描仪没有';我看不到Java文件,java,Java,我真的不明白是什么问题,但我的扫描仪就是看不到我传递的文件。我试着将文件移动到src,但仍然不起作用。代码如下: public static void main(String[] args) { File file = new File("src/1.txt"); Scanner sc = new Scanner(file); int n = sc.nextInt(); int [][] graph = new int [n][n]; for (int x =0; x<n
public static void main(String[] args) {
File file = new File("src/1.txt");
Scanner sc = new Scanner(file);
int n = sc.nextInt();
int [][] graph = new int [n][n];
for (int x =0; x<n; x++)
for (int y=0; y<n;y++)
graph[x][y] = sc.nextInt();
}
publicstaticvoidmain(字符串[]args){
File File=新文件(“src/1.txt”);
扫描仪sc=新扫描仪(文件);
int n=sc.nextInt();
int[][]图形=新的int[n][n];
对于(int x=0;x您可以尝试file.getCanonicalPath()
或file.getAbsolutePath()
确定您试图读取的文件路径,从而找出相对路径的错误。我假设这只是一个相对路径问题,与您试图访问文件的实际例程无关。如果您知道您正在使用文件
对象,您也会知道h现在,您必须更改相对路径。使用相对路径时,这始终是要检查的第一件事。请尝试下面的代码
File file = new File("C:\Users\evluc\IdeaProjects\ka1\src\com\company\src\1.txt");
try {
Scanner sc = new Scanner(file);
while (sc.hasNextLine()) {
int n = sc.nextInt();
int [][] graph = new int [n][n];
for (int x =0; x<n; x++)
for (int y=0; y<n;y++)
graph[x][y] = sc.nextInt();
}
sc.close();
}
catch (FileNotFoundException e) {
e.printStackTrace();
}
File File=new文件(“C:\Users\evluc\IdeaProjects\ka1\src\com\company\src\1.txt”);
试一试{
扫描仪sc=新扫描仪(文件);
while(sc.hasNextLine()){
int n=sc.nextInt();
int[][]图形=新的int[n][n];
对于(int x=0;x您提供的输入,src/1.txt
它试图在以下位置查看文件:C:\Users\evluc\IdeaProjects\src\1.txt
请给出文件的绝对路径或更正您的路径。运行此操作时您面临的错误/问题是什么您声明文件存储在src\com\company。因此,请尝试\src\com\company\1.txt您所在的类的目录是什么?我假定这是一个路径问题,文件不在正确的文件夹中。请尝试使用absolut你应该尝试“Users/evluc/IdeaProjects/ka1/src/com/company/1.txt”
不建议将前斜杠和后斜杠混合使用,在这种情况下可能根本不起作用。是的,如果该程序存在于同一个目录中。在这里只使用名称是可以的。我使用了getAbsolutePath()它显示了我传入File=new文件(“src/1.txt”)的确切路径;但扫描程序显示:未处理的异常:java.io。FileNotFoundException@mak我没有时间亲自用代码验证它,但以这个为例,我怀疑你不能用我上面描述的两种方法得到绝对路径。正如你所看到的,相对路径被解析为绝对路径。也许我遗漏了什么,但是IDK这应该是什么;)