我有java代码
File file = new File(fileName);
try {
input = new FileInputStream(file.getAbsolutePath());
} catch (FileNotFoundException e) {
e.printStackTrace();
}
Scanner fileScanner = new Scanner(fin);
我用来从文本文件中读取。但是,我正在使用ANT文件和调用
时在Windows的UNIX终端模拟器中进行编译file.getAbsolutePath()
它在bin
目录中查找输入文件。如何在src
目录中查找输入文件?
答案 0 :(得分:1)
如果您的fileName
是相对路径(例如test.txt
,而不是/temp/test.txt
),它会查找相对于当前所在目录的文件。我认为您可以实现目标是将../src/
添加到您的fileName
变量中。
答案 1 :(得分:1)
这个问题有几种解决方案:
自定义相应的ant任务,将文件从src
目录复制到bin
目录。
自定义适当的ant任务以将文件打包到JAR文件中并修改代码以从JAR文件中加载它。
将文件放在另一个文件夹(例如assets
)中,并自定义ant任务以将新文件夹复制到bin
文件夹。
就个人而言,我更喜欢选项3,因为src
旨在保存源文件。在我看来,其他资产应该分开存放。此外,如果您复制整个目录,则可以更轻松地向项目中添加其他资源。