我正在尝试为巡航控制系统开发一个java应用程序。但是我遇到了没有这种文件异常的问题。因为我在java编码方面有点新意。我不确定为什么会出现这个问题。我的代码是 -
public static void main(String[] commandLineArgs) throws IOException {
Path input_path = Paths.get(commandLineArgs[0]);
List<InputState> input_states = StateInput.input_states_from_file(input_path);
Timer timer = new Timer(new CruiseControlSystem());
List<OutputState> output_states = timer.pulse_from_input(input_states);
for (OutputState s : output_states){
System.out.println(s.format());
}
}
我发现的错误是 -
Exception in thread "main" java.nio.file.NoSuchFileException: commandLineArgs[0]
at sun.nio.fs.WindowsException.translateToIOException(Unknown Source)
at sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source)
at sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source)
at sun.nio.fs.WindowsFileSystemProvider.newByteChannel(Unknown Source)
at java.nio.file.Files.newByteChannel(Unknown Source)
at java.nio.file.Files.newByteChannel(Unknown Source)
at java.nio.file.spi.FileSystemProvider.newInputStream(Unknown Source)
at java.nio.file.Files.newInputStream(Unknown Source)
at java.nio.file.Files.newBufferedReader(Unknown Source)
at java.nio.file.Files.readAllLines(Unknown Source)
at StateInput.input_states_from_file(StateInput.java:31)
at CommandLine.main(CommandLine.java:23)
我的主要方法是 -
public static void main(String[] commandLineArgs) throws IOException {
Path input_path = Paths.get(commandLineArgs[0]);
List<InputState> input_states = StateInput.input_states_from_file(input_path);
Timer timer = new Timer(new CruiseControlSystem());
List<OutputState> output_states = timer.pulse_from_input(input_states);
for (OutputState s : output_states){
System.out.println(s.format());
}
}
答案 0 :(得分:0)
在程序参数文本框中,您当前有“ commandLineArgs [0] ”。您需要将“ commandLineArgs [0] ”更改为包含输入状态的文件路径。类似于“ / data / input-states ”。
答案 1 :(得分:0)
我的主要方法是:
Path input_path = Paths.get(commandLineArgs[0]);
不,不是。您正在传递"commandLineArgs[0]"
作为参数。你的意思是commandLineArgs[0]
,没有引号。
答案 2 :(得分:-1)
运行程序时,您没有向main方法传递任何参数。
您还可以添加如何运行它。