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卡上。

  • 相关阅读:
    C# 与 Java Rsa加密与解密互通
    PHP 读取Postgresql中的数组
    ArcGis Javascript API (V3.6)加载天地图
    Entity Framework 6.0 对枚举的支持/实体添加后会有主键反回
    ubuntu 中 ssh连接用UTF8
    Entity Framework PostgresQL CodeFirst
    Golang 字符编码
    CentOS 安装 mono
    C和C++中的不定参数
    WisDom.Net 框架设计(一) 总体框架
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3281265.html
Copyright © 2011-2022 走看看