Android:判断手机内部储存目录下是否有指定的文件
1、 关于手机内部储存目录和外部储存目录的关系
请参考“雨季莫忧离”大佬的文章彻底搞懂Android文件存储—内部存储,外部存储以及各种存储路径解惑
2、判断手机内部储存目录/data/user/0/com.example.xuanfuchuang/files/下是否有名称为“switch_configure.txt”的文件
注意:com.example.xuanfuchuang为包名
3、代码
public ArrayList<String> getFileName(String fileAbsolutePaht, String type) {
ArrayList<String> result = new ArrayList<String>();
File file = new File(fileAbsolutePaht);
File[] files = file.listFiles();
for (int i = 0; i < files.length; ++i) {
if (!files[i].isDirectory()) {
String fileName = files[i].getName();
if (fileName.trim().toLowerCase().endsWith(type)) {
result.add(fileName);
}
}
}
return result;
}
private void switch_configurefile(){
String switch_configurefilePath="switch_configure.txt";
//这个方法是获取内部存储的根路径
//getFilesDir().getAbsolutePath() =/data/user/0/packname/files
String path=getFilesDir().getAbsolutePath();
boolean pdtemp=false;
ArrayList<String> ss = getFileName(path, ".txt");
for (String s : ss) {
Log.d("TAG", "result:" + s);
if (s.equals(switch_configurefilePath))pdtemp=true;
}
File file = new File(switch_configurefilePath);
if(!pdtemp){// 文件不存在
Log.d("TAG", "文件不存在");
}else Log.d("TAG", "文件存在");
}
}
4、调用关系
//直接调用switch_configurefile()即可
switch_configurefile();
5、效果
6、参考文章
https://blog.csdn.net/u010937230/article/details/73303034
https://blog.csdn.net/u011068702/article/details/76399538