zoukankan      html  css  js  c++  java
  • [置顶] Android学习系列-把文件保存到SD卡上面(6)

    Android学习系列-把文件保存到SD卡上面(5)
    一般多媒体文件,大文件需要保存到SD卡中。关键点如下:
    1,SD卡保存目录:mnt/sdcard,一般采用Environment.getExternalStorageDirectory()方式。


     public void saveToSDCard(String filename, String content)throws Exception {
      File file = new File(Environment.getExternalStorageDirectory(), filename);//指定文件存储目录为SD卡,文件名
      FileOutputStream outStream = new FileOutputStream(file);//输出文件流
      outStream.write(content.getBytes());
      outStream.close();
     }
    2,需要申请权限,AndroidManifest.xml中配置权限
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="cn.itcast.files"
          android:versionCode="1"
          android:versionName="1.0">
        <application android:icon="@drawable/icon" android:label="@string/app_name">
             <uses-library android:name="android.test.runner" />
           
            <activity android:name=".MainActivity"
                      android:label="@string/app_name">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>

        </application>
        <uses-sdk android:minSdkVersion="8" />
    <instrumentation android:name="android.test.InstrumentationTestRunner"
      android:targetPackage="cn.itcast.files" android:label="Tests for My App" />
     
      <!-- 在SDCard中创建与删除文件权限 -->
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
    <!-- 往SDCard写入数据权限 -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
     
     
    </manifest>
    3.判断SD卡是否存在:Environment.getExternalStorageState().(getApplicationContext());

    代码示例:
       try {
        //判断SDCard是否存在,并且可以读写
        if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
         service.saveToSDCard(filename, content);
         Toast.makeText(getApplicationContext(), R.string.success, 1).show();
        }else{
         Toast.makeText(getApplicationContext(), R.string.sdcarderror, 1).show();
        }    
       } catch (Exception e) {
        Toast.makeText(getApplicationContext(), R.string.fail, 1).show();
        e.printStackTrace();
       }
    4.总结
    关键点:指定SD卡存放文件目录,判断sd卡是否存在,配置SDK访问权限。
    一般是将大文件存储到SD卡上。

  • 相关阅读:
    HDU2027 统计元音 一点点哈希思想
    湖南工业大学第一届ACM竞赛 数字游戏 字符串处理
    湖南工业大学第一届ACM竞赛 我素故我在 DFS
    HDU3293sort
    HDU2082 找单词 母函数
    HDU1018 Big Number 斯特林公式
    湖南工业大学第一届ACM竞赛 分糖果 位操作
    UVA 357 Let Me Count The Ways
    UVA 147 Dollars
    UVA 348 Optimal Array Multiplication Sequence
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3281265.html
Copyright © 2011-2022 走看看