gpt4 book ai didi

java - 如何修复此问题 'java.io.FileNotFoundException'

转载 作者:行者123 更新时间:2023-12-02 09:33:56 26 4
gpt4 key购买 nike

我的 RPG 在编译器中运行得很好。它输入一个文件并使用 Scanner 读取它,但是当我将其导出到“.jar”文件时,它会抛出 FileNotFoundException。

我尝试过将文件放在不同的位置。我尝试过使用不同的方式来调用该文件。似乎没有任何作用。

package worldStuff;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class World {

public static String[][] initWorld(String[][]array,String name) throws FileNotFoundException {
int j = 0;
String string;
Scanner input = new Scanner(new File(name+".map"));
while(j!=30) {
string = input.nextLine();
array[j] = string.split(",");
j++;
}
input.close();
return array;
}

}

这是输入文件的方法。我需要一种方法让它在编译后不出错。我正在使用 Eclipse IDE 并在此配置上导出:Eclipse Configuraiton

最佳答案

如果您可以选择使用 Java8,那么这样如何:

public static void main( String[] args ) {
try {
String[][] output = initWorld( "E:\\Workspaces\\Production\\Test\\src\\test\\test" );
for ( String[] o : output ) {
if ( o == null || o.length == 0 ) { break; }
System.out.println( "- " + o[0] );
}
} catch ( FileNotFoundException ex ) {
ex.printStackTrace();
}
}

public static String[][] initWorld( String name ) throws FileNotFoundException {

String array[][] = new String[30][];
try (Stream<String> stream = Files.lines(Paths.get(name))) {
List<String> inputList = stream.collect(Collectors.toList());
for ( int i = 0; i < 30 && i < inputList.size(); i++ ) {
array[i] = inputList.get( i ).split( "," );
}
} catch (IOException e) {
e.printStackTrace();
}
return array;
}

主要方法只是用于测试目的(打印每个初始化数组的第一个元素)。

此外,无需传递 String[][] 作为参数。

只需将 initWorld 参数替换为目标文件的路径(如果您在 Windows 上,请确保使用\,\本身就是一个转义字符)。

希望有帮助。

关于java - 如何修复此问题 'java.io.FileNotFoundException',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57701326/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com