文件名列表按特定顺序排序

时间:2014-04-25 11:54:09

标签: java arrays loadlibrary

我的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中高效地加载具有上述顺序的文件?

2 个答案:

答案 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));
}

如果您打算从特定目录加载。

除此之外,您需要按顺序从每个文件中划分依赖关系,或者读取要从其他源(数组,其他文件等)加载的文件列表。