android获得cache路径,android取得当前程序File与Cache路径!
主界面就是显示两个button,分别进入File与Cache的目录:
程序的架构为:
来看下主程序的代码:
public class FileCacheActivity extends Activity implements OnClickListener { private Button myButton1; private Button myButton2; private File cacheDir; private File fileDir; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); myButton1 = (Button) findViewById(R.id.myButton1); myButton2 = (Button) findViewById(R.id.myButton2); myButton1.setOnClickListener(this); myButton2.setOnClickListener(this); /** * 取得目前Cache目录 */ cacheDir = this.getCacheDir(); /** * 取得目前File目录 */ fileDir = this.getFilesDir(); } /* 调用EX05_16_1并将路径传入 */ private void showActivity(String path) { Intent intent = new Intent(); intent.setClass(FileCacheActivity.this, FileCacheListActivity.class); Bundle bundle = new Bundle(); bundle.putString("path", path); intent.putExtras(bundle); startActivity(intent); } @Override public void onClick(View v) { // TODO Auto-generated method stub int viewId = v.getId(); switch (viewId) { case R.id.myButton1: { String path = fileDir.getParent() + File.separator + fileDir.getName(); showActivity(path); break; } case R.id.myButton2: { String path = cacheDir.getParent() + File.separator + cacheDir.getName(); showActivity(path); break; } default: break; } } }
然后是显示listview的代码:
public class FileCacheListActivity extends Activity implements OnItemClickListener { private List items = null; private String path; private ListView listview; /** Called when the activity is first created. */ public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.mylist); listview = (ListView) findViewById(R.id.list); listview.setOnItemClickListener(this); /** * 取得bundle */ Bundle bunde = this.getIntent().getExtras(); /** * 取得上一个页面传入bundle里的数据 */ path = bunde.getString("path"); this.setTitle(path); /** * 去一个新的文件目录用来显示目录里的所有文件 */ File file = new File(path); fill(file.listFiles());// 列出该路径下的所有文件 } private void fill(File[] files) { items = new ArrayList(); if (files == null) { return; } /* 取得文件名放入ArrayList */ for (File file : files) { items.add(file.getName()); } /* 将ArrayList放入ArrayAdapter */ ArrayAdapter fileList = new ArrayAdapter(this, android.R.layout.simple_list_item_1, items); listview.setAdapter(fileList); } @Override public void onItemClick(AdapterView> l, View v, int position, long id) { File file = new File(path + File.separator + items.get(position)); if (file.isDirectory()) { fill(file.listFiles()); } } }
最后再来两个xml文件
main.xml
mylist.xml
完了!
android获得cache路径,android取得当前程序File与Cache路径!相关推荐
- linux路径信息,二、Linux的基础知识-路径、文件的信息查看、编辑及管理
第2周作业 (看老王视频) 描述Linux发行版的系统目录名称命名规则以及用途. 描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息? 总结软连接和硬连接区别,并用实例操 ...
- android读写缓存文件路径,Android app-cache-Path的 缓存图片、缓存文件的路径包名路径 和外路径比较...
代码对应的路径: //判断手机是否挂在sd卡 String externalStorageState= Environment.getExternalStorageState(); File down ...
- 转:彻底搞懂Android文件存储---内部存储,外部存储以及各种存储路径解惑
转自:https://blog.csdn.net/u010937230/article/details/73303034 前言: 对于任何一个应用来说,无论是PC端应用还是Android应用,存储肯定 ...
- Android文件存储---内部存储,外部存储以及各种存储路径解惑
本文转自:https://blog.csdn.net/u010937230/article/details/73303034 前言: 对于任何一个应用来说,无论是PC端应用还是Android应用,存储 ...
- Android获取手机中外置内存卡 内置内存卡 手机内存路径
http://www.open-open.com/code/view/1433585940578 首先内部存储路径为/data/data/youPackageName/,下面讲解的各路径都是基于你自己 ...
- android 本地存储路径,Android本地存储路径学习
一.前言: Android 中获取本地储存路径,有四个方法, getCacheDir().getFilesDir().getExternalFilesDir().getExternalCacheDir ...
- android开发字体样式,Android开发中修改程序字体的样式
Android提供三种字体:"Sans","serif"和"monospace". 1.在Android XML文件中设置字体 可以采用an ...
- vs2015编译android,VS2015 Update2 构建 Android 程序问题汇总
自VS2015起, Visual Studio开始逐渐内置支持跨平台开发, 并且Visual Studio团队还额外发布了一个编译工具集Clang with Microsoft CodeGen, 方便 ...
- 【Android 逆向】Android 逆向通用工具开发 ( Android 平台运行的 cmd 程序类型 | Android 平台运行的 cmd 程序编译选项 | 编译 cmd 可执行程序 )
文章目录 一.Android 平台运行的 cmd 程序类型 二.Android 平台运行的 cmd 程序编译选项 三.编译 Android 平台的 cmd 可执行程序 一.Android 平台运行的 ...
- 如何在Android模拟器上安装和卸载APK程序包
如何在Android模拟器上安装和卸载APK程序包 Android, 程序包, APK, 卸载, 模拟 一,安装APK 安装APK当然首先是要有模拟器,和要安装的APK包,这个不多废 ...
最新文章
- java 程序运行时注入方法_Spring入门(九):运行时值注入
- IT行业HR:我们很缺人...
- HTML5 基础知识(四)
- python秒杀神器苏宁_Python爬虫——实战三:爬取苏宁易购的商品价格
- qq数据泄露_真良心,腾讯这个app竟然能查账号泄露
- mysql dump 1449_跨版本mysqldump恢复报错Errno1449
- 【Elasticsearch】Elasticsearch自定义评分的N种方法
- Android开源项目,圆形ImageView之CircleImageView
- 基于AWS的云备份容灾解决方案
- HTML5-坦克大战一画出敌人坦克并让自己的坦克可以发子弹的功能(二)
- ubuntu14.04安装显卡驱动(转载)
- JS用图片制作的走动的时间表
- 免费的开源飞行规划软件Little Navmap
- 黑客攻防日记---刘欣
- tensorflow2.3实现街景语义分割(二)
- conan入门(二):conan 服务配置-密码管理及策略
- 模块“Upgrade”启动失败。 未能启动虚拟机。虚拟机VMware不支持的硬件版本【终极解决方案】
- 【转载】损失函数 - 交叉熵损失函数
- 神经网络每次输出不一样,神经网络输出值相同
- 【数据库】MySQL的sql语句详解