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

相关推荐
Kapaseker1 小时前
Android 开发来看看 Kotlin 2.4.0 更新了个啥
android·kotlin
前端与小赵1 小时前
快速生成安卓证书并打包生成安卓apk(保姆教程)
android·前端
吃螺丝粉2 小时前
MySQL 5.7 到 9.7.0 LTS 升级核心指南
android
-SOLO-2 小时前
TraceFix 自动添加trace信息
android
yuananyun3 小时前
APP 图标规范与设计全攻略:iOS/Android/Web 一次设计多端合规,快速出图
android·前端·ios
sun0077003 小时前
dns命令排查解析nslookup
android
问心无愧05134 小时前
ctf show web入门99
android·前端·笔记
plainGeekDev4 小时前
Handler/Looper → Coroutines
android·java·kotlin
awu的Android笔记4 小时前
限速/丢包/乱序/重复/篡改:Android 弱网模拟的 5 把利刃
android·tcp/ip
niech_cn4 小时前
uniapp开发App(iOS、Android、鸿蒙Next)之配置pages.json 页面路由(三)
android·ios·uni-app