Android 内部存储常用知识

本文详细介绍了Android应用内部存储路径的结构和使用方法,包括files、cache、customdir等目录及其相关API,帮助开发者更好地理解并利用内部存储。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先内部存储路径为/data/data/appPackageName/,所有内部存储中保存的文件在用户卸载应用的时候会被删除。
基于应用的内部存储路径常用知识:
一、 files
1. Context.getFilesDir(),该方法返回/data/data/appPackageName/files的File对象。
2. Context.openFileInput()与Context.openFileOutput(),只能读取和写入files下的文件,返回的是FileInputStream和FileOutputStream对象。
3. Context.fileList(),返回files下所有的文件名,返回的是String[]对象。
4. Context.deleteFile(String),删除files下指定名称的文件。

二、cache
1. Context.getCacheDir(),该方法返回/data/data/appPackageName/cache的File对象。

三、custom dir

getDir(String name, int mode),返回/data/data/appPackageName/下的指定名称的文件夹File对象,如果该文件夹不存在则用指定名称创建一个新的文件夹。

四、可用内部存储

        File path = Environment.getDataDirectory();

        StatFs stat = new StatFs(path.getPath());
         
        //文件系统的块的大小(byte)
        long blockSize1 = stat.getBlockSize();
        //文件系统的总的块数
        long totalBlocks1 = stat.getBlockCount();
        //文件系统上空闲的可用于程序的存储块数
        long availableBlocks1 = stat.getAvailableBlocks();
         
        //总的容量
        long totalSize1 = blockSize1*totalBlocks1;
        long availableSize1 = blockSize1*availableBlocks1;
         
        String totalStr1 = Formatter.formatFileSize(this, totalSize1);
        String availableStr1 = Formatter.formatFileSize(this, availableSize1);
         
        internalTv.setText("内部存储的大小"+"\n"+"总大小:"+totalStr1+"\n"+"可用大小:"+availableStr1);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值