【代码】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 保存文件路径方法

相关推荐
maki07729 分钟前
VR大空间资料 04 —— VRAF使用体验和源码分析
android·vr·虚幻·源码分析
消失的旧时光-19433 小时前
Kotlin 判空写法对比与最佳实践
android·java·kotlin
锅拌饭3 小时前
Android Handler(一) 同步屏障泄露导致页面假死
android
锅拌饭3 小时前
Android Handler(二) 同步屏障泄露检测
android
手机不死我是天子5 小时前
《Android 核心组件深度系列 · 第 3 篇 BroadcastReceiver》
android·android studio
用户17345666963475 小时前
Android 日志库:高性能压缩加密日志系统
android
恋猫de小郭5 小时前
React 和 React Native 不再直接归属 Meta,React 基金会成立
android·前端·ios
bst@微胖子6 小时前
鸿蒙实现滴滴出行项目之侧边抽屉栏以及权限以及搜索定位功能
android·华为·harmonyos
zcz16071278216 小时前
Docker Compose 搭建 LNMP 环境并部署 WordPress 论坛
android·adb·docker