Java 如何访问内部存储以在ListView中列出所有pdf文件 public ArrayList GetFiles(String DirectoryPath) { ArrayList MyFiles=新建ArrayList(); 文件f=新文件(目录路径); f
如何访问内部存储以在ListView中列出所有pdf文件Java 如何访问内部存储以在ListView中列出所有pdf文件 public ArrayList GetFiles(String DirectoryPath) { ArrayList MyFiles=新建ArrayList(); 文件f=新文件(目录路径); f,java,android,Java,Android,如何访问内部存储以在ListView中列出所有pdf文件 public ArrayList GetFiles(String DirectoryPath) { ArrayList MyFiles=新建ArrayList(); 文件f=新文件(目录路径); f、 mkdirs(); File[]files=f.listFiles(); 如果(files.length==0)返回null; 否则{ 对于(int i=0;i除您自己的应用程序外,您无权访问其他应用程序的内部存储。它是每个应用程序的专用存
public ArrayList GetFiles(String DirectoryPath)
{
ArrayList MyFiles=新建ArrayList();
文件f=新文件(目录路径);
f、 mkdirs();
File[]files=f.listFiles();
如果(files.length==0)返回null;
否则{
对于(int i=0;i除您自己的应用程序外,您无权访问其他应用程序的内部存储。它是每个应用程序的专用存储。外部存储(设备内部和SD卡)是公共的,任何应用程序都可以访问。为了列出PDF文件,需要枚举您想考虑的文件夹中存在的文件,例如缓存等。没有什么叫做“环境外部存储”。请编辑您的答案,以便我们知道您实际传入的内容method@0X0nosugarenvironment.getExternalStorageDirectory()无法识别(fileDTO)请给出任何建议,我想在内部存储中搜索pdf以查找外部存储我很好,请评论这行
public ArrayList<String> GetFiles(String DirectoryPath)
{
ArrayList<String> MyFiles = new ArrayList<String>();
File f = new File(DirectoryPath);
f.mkdirs();
File[] files = f.listFiles();
if (files.length == 0) return null;
else {
for (int i=0; i<files.length; i++) MyFiles.add(files[i].getName());
}
return MyFiles;
}
public ArrayList<String> searchPdfInExternalStorage(File folder) {
ArrayList<String> MyFiles = new ArrayList<String>();
if (folder != null) {
if (folder.listFiles() != null) {
for (File file : folder.listFiles()) {
if (file.isFile()) {
//.pdf files
if (file.getName().contains(".pdf")) {
MyFiles.add(file.getPath());
Log.d("filePath-------", "" + file.getPath());
}
} else {
searchPdfInExternalStorage(file);
}
}
}
}
}
searchPdfInExternalStorage(Environment.getExternalStorageDirectory());