我的java代码列出了文件系统目录下的所有代码文件,并逐个加载每个文件:
File[] files = mDir.listFiles();
for(File f: files) {
System.out.println(f.getPath());
//load code file
System.load(f);
}
上面的代码在逻辑上看起来不错,但不适合我的情况。
我的情况是我可以 NOT 逐个加载它们,因为这些代码文件之间存在依赖关系。我需要根据依赖性按特定顺序加载文件。
说,我已经知道目录mDir
下面有以下文件,应按以下顺序加载:
["dFile", "xFile", "aFile", "hFile"]
我已经获得了目录实例mDir
。
如何在java中高效地加载具有上述顺序的文件?
答案 0 :(得分:0)
如果您已经知道您感兴趣的文件,那么只需按正确的顺序加载它们。
如果您必须先查看哪些文件可用,然后按特定顺序加载它们,请使用一个循环获取现有文件的名称,然后按正确顺序选择正确的文件来处理列表。 / p>
答案 1 :(得分:0)
我建议只是正确设置工作目录(参见Changing the current working directory in Java?)然后再做
for(String fname : fileArray) {
System.load(new File(fname));
}
(其中fileArray是文件名列表)或
for(String fname : fileArray) {
System.load(new File(mDir.getPath() + fname));
}
如果您打算从特定目录加载。
除此之外,您需要按顺序从每个文件中划分依赖关系,或者读取要从其他源(数组,其他文件等)加载的文件列表。