【代码】Android|判断asserts下的文件存在与否,以及普通文件存在与否

作者版本:Android 11及以上

主要是发现网上没有完整的、能跑的代码,不知道怎么回事,GPT给我重写的。我只能保证这个代码尊嘟能跑,不像其他的缺胳膊少腿的。

asserts

贴一下结果:

java 复制代码
  boolean isAssertFileExists(String filename) {
      AssetManager assetManager = getActivity().getAssets();
      try {
          String[] files = assetManager.list("");
          for (String file : files) {
              if (file.equals(filename)) {
                  return true;
              }
          }
      } catch (IOException e) {
          e.printStackTrace();
      }
      return false;
  }

需要引入的头文件:

java 复制代码
import java.io.IOException;
import android.content.res.AssetManager;

可以看到能正常判断:

其他外部文件或者data下的文件

如果是常规文件只需要用new File(filepath).exists()就行了。写成函数如下:

java 复制代码
  boolean checkFileExists(String dirname, String filename) {
    File file = new File(dirname, filename);
    return file.exists();
  }

有个人写了但是他那个代码没有getActivity()导致getAssets没定义,见android判断asses文件是否存在

如果找不到自己的软件包存的文件的路径,可以看看这篇博客Android 保存文件路径方法

相关推荐
Grackers25 分钟前
Android Perfetto 系列 8:深入理解 Vsync 机制与性能分析
android
xinhuanjieyi1 小时前
php给30支NBA球队添加logo图标,做好对应关系
android·开发语言·php
jian110581 小时前
Android studio会自动下载高版本的tools
android·ide·android studio
Trouvaille ~1 小时前
【MySQL篇】内外连接:多表关联的完整指南
android·数据库·mysql·面试·后端开发·dql·内外连接
Zender Han2 小时前
VS Code 开发 Flutter 常用快捷键和插件工具详解
android·vscode·flutter·ios
wfsm2 小时前
安卓环境配置
android
于慨2 小时前
flutter安卓调试工具
android·flutter
y小花2 小时前
dumpsys audio指令详解
android·音视频
YF02112 小时前
Android微信机器人ClawBot如何配置语音播放音乐
android·人工智能
dualven_in_csdn3 小时前
EMQX 开启 **MySQL + password_based** 认证
android·数据库·mysql