命令行参数中的文件路径

时间:2012-06-18 17:24:51

标签: java

在我目前的项目中,我正在编写代码生成器。界面是命令行。

在命令行参数中,用户指定规范文件和目标文件夹,指导代码生成器在特定目标文件夹中生成文件。

例如,我的命令行参数是

VocArchSpec.text NetworkSpec.text ./src/fr/inria/arles/pankesh/gen ./src/fr/inria/arles/pankesh/gen/logic ./src/fr/inria/arles/pankesh/gen/sim/device ./src/fr/inria/arles/pankesh/gen/util

在上面的命令中,1和2是规范,其他是目的地的路径。代码生成器使用此路径。代码生成器在指定的目标文件夹中生成多个java文件。

但是,我的问题是我遇到了以下错误:

java.io.IOException: The system cannot find the path specified
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:883)

===============>我使用以下代码生成文件。

new File(GlobalVariable.utilDirPath).mkdir(); // Assume that I set the value GlobalVariable.utilDirPath variable through command line arguments. 
file = new File(GlobalVariable.utilDirPath + "/" + unit.getName());
file.createNewFile();
FileWriter writer = new FileWriter(file);
writer.write(content);
writer.flush();
Writer.close();

1 个答案:

答案 0 :(得分:1)

获得此异常的一种方法是,当创建文件的路径(文件夹)不存在时。您的代码需要确保指定的文件夹存在。

要想轻松创建这些内容,请查看File.mkdirs()