我有两项活动。
1.TestActivity:显示测试文档列表,当用户点击按钮时会下载文档。
2. ShowDownloadedActivity
:显示下载文件列表(外部存储中的文件列表)。
在TestRecyclerAdapter
我需要一种方法来检查文件是否已经下载(换句话说,文件是否存在于外部存储器中?)?如果它已经下载,它必须为用户显示不同的文本(有些东西,比如“已下载”)。
为了达到这个目的,我想检查文件列表中是否存在文件名(“外部存储”)。
这是ShowDownloadedActivity的onCreate
:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_show_downloaded_file);
String path = Environment.getExternalStorageDirectory().getAbsolutePath() + "/Android/data/my.package.name/files/downloaded".toString();
File file = new File(path);
File list[] = file.listFiles();
if(file.listFiles() != null){
for(int i=0; i<list.length ; i++){
ModelShowFile modelShowFile = new ModelShowFile();
modelShowFile.setTitle(list[i].getName());
mylist.add(modelShowFile);
}
recyclerView = (RecyclerView)findViewById(R.id.recycler_ac_show_downloaded_file);
recyclerView.setLayoutManager(new LinearLayoutManager(ShowDownloadedFileActivity.this));
adapter = new AdapterRecyclerShowFile(ShowDownloadedFileActivity.this,mylist);
recyclerView.setAdapter(adapter);
}
else {
Toast.makeText(ShowDownloadedFileActivity.this , "Nothing yet !",Toast.LENGTH_SHORT).show();
}
}
编辑:
伙计我需要在ShowDownloadedActivity中使用一个方法,并使用filename作为字符串参数来检查,即带有传递的fileName的文件是否已存在于外部存储器中?就是这样。
谢谢:
答案 0 :(得分:1)
试试这可能会对你有所帮助
public boolean checkDownload(String filenameWithExtension)
{
File extStore = Environment.getExternalStorageDirectory();
File myFile = new File(extStore.getAbsolutePath() + filenameWithExtension);
return myFile.exists();
}