第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

android IO流操作總結(jié)

標(biāo)簽:
Android
文件读取的基础流程 使用api获取内部文件的存储路径

应用只能在自己的包名文件夹中读写文件,三种方式获取内部文件的存储路径

使用字符串来表示应用的内部文件路径

    File file = new File("data/data/com.example.www/info.txt");

使用API来获取应用的内容文件夹路径,会在包名下生成files文件夹用于存储文件

    File file = new File(getFilesDir(), "info.txt");

使用API来获取应用的内容文件夹路径,会在包名下生成cache文件夹用于存储文件,存储空间不足时会被删除

    File file = new File(getCacheDir(), "info.txt");
使用api获取外部文件的存储路径

该链接指向外部存储的地址
图片描述

    storage/sdcard 

增加外部存储访问读写的权限

     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
     <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

使用API来获取外部存储路径

    File file = new File(Environment.getExternalStorageDirectory(), "info.txt");
SD的状态
    MEDIA_REMOVED:sd卡不存在
    MEDIA_UNMOUNTED:sd卡存在,但是没有挂载
    MEDIA_CHECKING:sd卡正在遍历
    MEDIA_MOUNTED:sd卡可用
    MEDIA_MOUNTED_READ_ONLY:sd卡可用,但是只读
判断SD卡是否存在

获得SD卡的API返回表示状态的字符串常量

    Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)

判断SD卡的剩余空间

// 获取外部存储的路径
File path = Environment.getExternalStorageDirectory();

// 得到外部存储的设备信息
StatFs stat = new StatFs(path.getPath());
long blockSize;
long totalBlocks;
long availableBlocks;

//判断当前版本是否是4.3或以上
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2){

// SD卡被分成若干个区块每个区块都有特定的大小 

// 获得区块的大小
blockSize = stat.getBlockSizeLong();

// 获得区块的数量
totalBlocks = stat.getBlockCountLong();

// 获得可用的区块数量
availableBlocks = stat.getAvailableBlocksLong();
        }
        else{
             blockSize = stat.getBlockSize();
             totalBlocks = stat.getBlockCount();
             availableBlocks = stat.getAvailableBlocks();
        }
// 剩余区块数量*每一个区域的大小 =   剩余空间的字节大小     
String text = formatSize(availableBlocks * blockSize);
    private String formatSize(long size) {
        return Formatter.formatFileSize(this, size);
....
Activity提供了openFileOutput()方法可以用于把数据输出到文件中

在android中,可以通过Context.openFileInput和Context.openFileOutput来分别获取FileInputStream和FileOutputStream。

openFileInput(String fileName); 打开应用程序私有目录下的指定私有文件以读入数据,返回一个FileInputStream对象。

openFileOutput(String name,int mode);打开应用程序私有目录下的指定私有文件以写入数据,返回一个FileOutputStream对象,如果文件不存在就创建这个文件。

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫(xiě)下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消