【代碼】Android|判斷asserts下的文件存在與否,以及普通文件存在與否

作者版本:Android 11及以上

主要是發現網上沒有完整的、能跑的代碼,不知道怎么回事,GPT給我重寫的。我只能保證這個代碼尊嘟能跑,不像其他的缺胳膊少腿的。

asserts

貼一下結果:

  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;}

需要引入的頭文件:

import java.io.IOException;
import android.content.res.AssetManager;

可以看到能正常判斷:
在這里插入圖片描述

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

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

  boolean checkFileExists(String dirname, String filename) {File file = new File(dirname, filename);return file.exists();}

有個人寫了但是他那個代碼沒有getActivity()導致getAssets沒定義,見android判斷asses文件是否存在。

如果找不到自己的軟件包存的文件的路徑,可以看看這篇博客Android 保存文件路徑方法。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/717259.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/717259.shtml
英文地址,請注明出處:http://en.pswp.cn/news/717259.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Nginx配置php起WoWSimpleRegistration服務

WoWSimpleRegistration服務的git地址: GitHub - TrinityCore/WoWSimpleRegistration: Simple Registration page for TrinityCore/AzerothCore/AshamaneCore/CMangos 下載WoWSimpleRegistration 首先git下載: git clone https://github.com/TrinityC…

kafka消費者接收不到消息

背景: 對kafka消息進行監聽,生產者發了消息,但是消費端沒有接到消息,監聽代碼 消費端,kafka配置 spring.kafka.bootstrap-serverskafka.cestc.dmp:9591 spring.kafka.properties.sasl.jaas.configorg.apache.kafka.…

29.HarmonyOS App(JAVA)通知

普通通知: 通知渠道,彈出消息后,自動消失 長文本通知 //多行文本通知 //圖片通知 //社交通知 //媒體通知--經測試,圖片無法顯示,文字不顯示 場景介紹 HarmonyOS提供了通知功能,即在一個應用的UI界面之外顯示的消息,主…

C++之結構體以及通訊錄管理系統

1,結構體基本概念 結構體屬于自定義的數據概念,允許用戶存儲不同的數據類型 2,結構體的定義和使用 語法:struct 結構體名{ 結構體成員列表}; 通過結構體創建變量的方式有三種: 1,struct …

【簡說八股】面試官:你知道什么是AOP么?

回答 AOP(Aspect-Oriented Programming),即面向切面編程,是一種編程范式,它的主要思想是將應用程序中的橫切關注點(如日志記錄、性能統計、安全控制等)從業務邏輯中剝離出來,然后通過特殊的方式將這些橫切…

設計模式學習筆記 - 設計原則 - 8.迪米特法則(LOD)

前言 迪米特法則,是一個非常實用的原則。利用這個原則,可以幫我們實現代碼的 “高內聚、松耦合”。 圍繞下面幾個問題,來學習迪米特原則。 什么是 “高內聚、松耦合”?如何利用迪米特法則來實現 高內聚、松耦合?哪些…

程序員求職

程序員的金三銀四求職寶典 隨著春天的腳步漸近,對于許多程序員來說,一年中最繁忙、最重要的面試季節也隨之而來。金三銀四,即三月和四月,被廣大程序員視為求職的黃金時期。在這兩個月里,各大公司紛紛開放招聘&#xf…

技術實踐|百度安全「大模型內容安全」高級攻擊風險評測

1、引子 2023年10月16日,OWASP發布了《OWASP Top 10 for LLM Applications》,這對于新興的大語言模型安全領域,可謂一份綱領性的重要報告。 OWASP是開放式Web應用程序安全項目(Open Web Application Security Project&#xff0…

【Linux網絡命令系列】ping curl telnet三劍客

💝💝💝歡迎來到我的博客,很高興能夠在這里和您見面!希望您在這里可以感受到一份輕松愉快的氛圍,不僅可以獲得有趣的內容和知識,也可以暢所欲言、分享您的想法和見解。 推薦:kwan 的首頁,持續學…

【C++】vector的使用和模擬實現(超級詳解!!!!)

文章目錄 前言1.vector的介紹及使用1.1 vector的介紹1.2 vector的使用1.2.1 vector的定義1.2.2 vector iterator 的使用1.2.3 vector 空間增長問題1.2.3 vector 增刪查改1.2.4 vector 迭代器失效問題。(重點!!!!!!)1.2.5 vector 在OJ中有關的練習題 2.ve…

C++入門和基礎

目錄 文章目錄 前言 一、C關鍵字 二、命名空間 2.1 命名空間的定義 2.2 命名空間的使用 2.3 標準命名空間 三、C輸入&輸出 四、缺省參數 4.1 缺省參數的概念 4.2 缺省參數的分類 五、函數重載 5.1 函數重載的簡介 5.2 函數重載的分類 六、引用 6.1 引用的…

搭建個人IC_EDA服務器(物理機)一:安裝Centos7

1.準備 大于8G的U盤;待裝的電腦,我使用淘汰的在大學時候使用的筆記本;U盤啟動器制作工具:UltralSo;官網下載的在沒有付費的情況下,即使試用期,安裝的時候會有莫名的問題,建議使用這…

【接口測試】常見HTTP面試題

目錄 HTTP GET 和 POST 的區別 GET 和 POST 方法都是安全和冪等的嗎 接口冪等實現方式 說說 post 請求的幾種參數格式是什么樣的? HTTP特性 HTTP(1.1) 的優點有哪些? HTTP(1.1) 的缺點有哪些&#x…

全量知識系統問題及SmartChat給出的答復 之14 解析器+DDD+文法型 之2

Q36. 知識系統中設計的三種文法解析器和設計模式之間的關系 進一步,我想將 知識系統中設計的三種語言(形式語言、人工語言和自然)的文法解析器和DDD中的三種程序類型(領域模型、領域實體和領域服務) 形式語言文法 我…

動態代理總結

Java 代理模式 使用代理對象來代替對真實對象(real object)的訪問,這樣就可以在不修改原目標對象的前提下,提供額外的功能操作,擴展目標對象的功能 靜態代理 靜態代理在編譯時就將接口、實現類、代理類這些都變成了一個個實際的 class 文件…

MQ如何防止消息被重復消費?

被詢問如何防止MQ消息被重復消費時,其實是在考察候選人對消息隊列、分布式系統設計以及容錯機制的理解,通過這些問題,可以全面了解候選人在處理MQ消息重復消費問題時的思考方式、技術能力和實踐經驗,從而評估其是否適合擔任相關崗…

Puzzles

題目鏈接:Submit - Codeforces?????? 解題思路: 題目大概意思就是在一個數組里找n個數里的最大值減最小值的最小值,先排序,然后將第i n - 1項減去第i項與最小值作比較,輸出最小值即可,注意循環結束…

NTP網絡校時服務器(GPS北斗衛星校時系統)應用場景

NTP網絡校時服務器(GPS北斗衛星校時系統)應用場景 NTP網絡校時服務器(GPS北斗衛星校時系統)應用場景 隨著大數據、云計算時代的到來,各行業信息化建設的不斷提升,信息化下的各個系統不再單獨處理各自業務,而是趨于協同工作,因此,各…

YOLOv應用開發與實現

一、背景與簡介 YOLO(You Only Look Once)是一種流行的實時目標檢測系統,其核心思想是將目標檢測視為回歸問題,從而可以在單個網絡中進行端到端的訓練。YOLOv作為該系列的最新版本,帶來了更高的檢測精度和更快的處理速…

代碼隨想錄day34||● 860.檸檬水找零 ● 406.根據身高重建隊列 ● 452. 用最少數量的箭引爆氣球

860. 檸檬水找零 - 力扣&#xff08;LeetCode&#xff09; class Solution { public:bool lemonadeChange(vector<int>& bills) {int five0,ten0,twenty0;for(int bill:bills){if(bill5)five;if(bill10){if(five<0)return false;ten;five--;}if(bill20){if(ten&g…