Java 在android中为文件夹路径Environment.DIRECTORY\u DOWLOAD设置一个变量

Java 在android中为文件夹路径Environment.DIRECTORY\u DOWLOAD设置一个变量,java,android,internal-storage,Java,Android,Internal Storage,我似乎找不到这个简单问题的答案 如何设置变量以包含应用程序内部下载目录的路径字符串 root = Environment.DIRECTORY_DOWLOAD; 然后,我可以通过以下方式访问该目录中的文件: root+"/"+filename+".pdf" 我可以打开一个文件列表,但我不明白它在做什么 public void showDownload(View view) { Intent i = new Intent(); i.setAction(DownloadManage

我似乎找不到这个简单问题的答案

如何设置变量以包含应用程序内部下载目录的路径字符串

root = Environment.DIRECTORY_DOWLOAD;
然后,我可以通过以下方式访问该目录中的文件:

root+"/"+filename+".pdf"
我可以打开一个文件列表,但我不明白它在做什么

public void showDownload(View view) {
    Intent i = new Intent();
    i.setAction(DownloadManager.ACTION_VIEW_DOWNLOADS);
    startActivity(i);
}

如果您只想列出该目录中的文件,您可以这样做:

File dir = Environment.getExternalStoragePublicDirectory(Environment
        .DIRECTORY_DOWNLOADS);
String dirPath = dir.getAbsolutePath();

String[] files = dir.list();
for (String file : files) Log.e("", "File: " + file);
或者说:

File[] files = dir.listFiles();
for (File file : files) Log.e("", "File: " + file.getAbsolutePath());

“我的应用程序的内部下载目录”是什么意思?当我从我的Web服务下载一个文件时,它会根据我的理解保存到应用程序下载文件夹中。我正在学习一个教程,所以我不确定如何访问这个目录。谢谢你的回答。你在哪里使用dirPath字符串?@silversunhunter,我没有。这只是一个获取路径的示例。这对你有用吗?没有。。循环中没有输出日志。我一定错过了一些明显的东西。我使用以下命令下载了该文件:
request.setdestinationnexternalfilesdir(mContext,Environment.DIRECTORY\u DOWNLOADS,fileName)
@silversunhunter问了一个愚蠢的问题,但你确实有外部写入权限,对吗?是的。我将其设置为学习如何从服务器下载的教程的一部分。