如何获取android中文件数组的大小?

How to get the size of the file array in android?

我使用此代码获取所有文件夹:

 File MyDir[] = getExternalCacheDirs();

然后我使用这些代码来显示路径:

Toast.makeText(getApplicationContext(), MyDir[0].getPath(), Toast.LENGTH_LONG).show();
Toast.makeText(getApplicationContext(), MyDir[1].getPath(), Toast.LENGTH_LONG).show();

但是,我想知道如何获取文件列表的长度,所以我可以使用for-loop来显示所有路径

喜欢:

for (j = 0; j <= <size_of_the_list>; j += 1) { 
 Toast.makeText(getApplicationContext(),MyDir[j].getPath(),Toast.LENGTH_LONG).show();
}

MyDir是一个数组,为什么不做:

// MyDir.length


for (j = 0; j < MyDir.length; j ++) { 
    Toast.makeText(getApplicationContext(), MyDir[j].getPath(),       Toast.LENGTH_LONG).show();
}

?

您正在搜索 length 属性

for (j=0; j< MyDir.length; j++) { 

}

这里有更多详细信息thread

它在这里:

public static long folderSize(File directory) {
    long length = 0;
    for (File file : directory.listFiles()) {
        if (file.isFile())
            length += file.length();
        else
            length += folderSize(file);
    }
    return length;
}

如果您不熟悉数组,我建议您查看具体细节教程的 Arrays 部分。

您正在寻找数组的length 属性:

for (j = 0; j < array.length; j += 1) { }

请注意,您应该使用 < 而不是 <=,因为数组中有 array.length 个元素, 而不是 array.length + 1。数组的最后一个元素是 array[array.length - 1](假设它不为空)。

要回答您的问题,您可以通过调用 .length 来获取数组的大小。

array.length

您还应该查看此内容以了解有关数组的更多信息。 http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html