【发布时间】:2012-11-03 02:24:22
【问题描述】:
我正在尝试从 Internet 下载文件,它成功了,但现在 我想检查文件是否存在于内部存储中。
else if (arg0.getId() == R.id.btn_download)
{
Toast.makeText(this, "download button clicked", Toast.LENGTH_SHORT).show();
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(names[b]));
request.setDescription("Downloading..");
request.setTitle("Futsing Magazine Issue " + (this.mPictureManager.getCurrentIndex() +1) );
// in order for this if to run, you must use the android 3.2 to compile your app
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
request.allowScanningByMediaScanner();
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
}
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "Futsing Magazine Issue " + (this.mPictureManager.getCurrentIndex()
+1) +".pdf");
// get download service and enqueue file
DownloadManager manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
manager.enqueue(request);
检索到的项目将下载到 /mnt/sdcard/Download。 如何使用代码检查文件是否存在?
【问题讨论】:
-
使用File类的exists()方法查看。
-
请注意这不是内部存储,因为 DownloadManager 无法访问任何应用程序的内部存储。它是特定于包的外部存储。参考:
https://developer.android.com/training/data-storage/files/external