`
wangfu_02
  • 浏览: 71761 次
社区版块
存档分类
最新评论

android开发积累5-操作sd卡

阅读更多

android中操作sd卡相关说明:

1、判断sd卡是否存在

if (Environment.getExternalStorageState().equals(
                Environment.MEDIA_MOUNTED)==false) {
            text.setText("sd卡不存在");
            return;
        }

 

2、获取sd卡根目录

Environment.getExternalStorageDirectory().getPath()

 

3、操作sd卡的权限

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

 

 

下面是一个操作sd卡,创建、删除目录、文件的例子:

CardActivity.java

package Test.wangfu;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;

import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.widget.TextView;

public class CardActivity extends Activity {

    private TextView text = null;
    private String directory = "/sdcard/wangfu";
    private String fileName = "/sdcard/wangfu/text.txt";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.card);
        text = (TextView) this.findViewById(R.id.cardLabel);

        if (Environment.getExternalStorageState().equals(
                Environment.MEDIA_MOUNTED)==false) {
            text.setText("sd卡不存在");
            return;
        }
        File path = new File(directory);
        if (path.exists() == false) {
            path.mkdir();
            text.setText("创建sd卡目录完成");
            // 创建文件
            try {
                java.io.OutputStreamWriter fw = new OutputStreamWriter(
                        new FileOutputStream(new File(fileName)), "UTF-8");

                //写入wangfu writer test
                fw.write("wangfu writer test");
                fw.flush();
                fw.close();
            } catch (java.lang.Exception ex) {
                text.setText(ex.getMessage());
                ex.printStackTrace();
            }
        } else {
            String sContent = "";
            java.io.InputStreamReader rd;
            try {
                rd = new java.io.InputStreamReader(new java.io.FileInputStream(
                        new File(fileName)), "UTF-8");
                java.io.BufferedReader reader = new java.io.BufferedReader(rd);
                String s = null;
                s = reader.readLine();

                while (s != null) {
                    sContent += s + "\r\n";
                    s = reader.readLine();
                }
                reader.close();
            } catch (java.lang.Exception e) {
               
                e.printStackTrace();
            }
            text.setText(sContent);
            File file = new File(fileName);
            file.delete();
            path.delete();
        }

    }

 

card.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
   
 <TextView
        android:id="@+id/cardLabel"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Enter Number to Dial:" />
   
</LinearLayout>

 

 

需要在AndroidManifest.xml添加权限

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

 

分享到:
评论

相关推荐

    2019-android项目开发范例-推荐word版 (23页).docx

    - **文件操作**:涵盖内部文件系统、SD卡读写等内容,掌握文件处理的基本技巧。 - **数据共享接口**:讲解Content Provider的使用方法,实现跨应用数据共享功能。 #### 六、网络开发与通信 - **HTTP协议应用**:...

    android开发环境搭建步骤

    - **配置AVD**:新建AVD时,指定名称、选择目标SDK版本,以及SD卡大小。这些参数将影响模拟器的行为。 5. **开发第一个Android项目**: - **新建项目**:在Eclipse中,通过"File &gt; New &gt; Android Project"创建新...

    《Android应用开发揭秘》源码

     第1章 Android开发简介  1.1 Android基本概念  1.1.1 Android简介  1.1.2 Android的系统构架  1.1.3 Android应用程序框架  1.2 OMS介绍  1.2.1 OPhone介绍  1.2.2 Widget介绍  1.3 小结  第2章 Android...

    Android代码-Android

    &gt; &gt; SDCardUtils 【SD卡相关】 &gt; &gt; &gt; SPUtils 【缓存工具类】 &gt; &gt; 轮子 &gt; &gt;待补充 android中的框架设计模式 MVP模式 优秀开源项目推荐 Android 开源项目分类汇总 AnimeTaste -- 优秀开源app progit中文版教程 gi

    android开发环境搭建

    在后续的Android开发过程中,你将逐步学习更多的概念和技术,如布局设计、Activity管理、数据存储、网络通信等,逐步成长为一名熟练的Android开发者。在学习过程中,不断实践和探索,积累经验,你的技能将会日益精进...

    Windows下Android开发环境搭建手册分析.pdf

    【Android开发环境搭建】 在Windows环境下进行Android应用开发,首先需要搭建一套完整的开发环境。本文将详细介绍这个过程,包括JDK的安装...记得在学习过程中不断实践和积累经验,祝你在Android开发旅程中取得成功!

    Android应用开发揭秘

    第1章 Android开发简介 1.1 Android基本概念 1.1.1 Android简介 1.1.2 Android的系统构架 1.1.3 Android应用程序框架 1.2 OMS介绍 1.2.1 OPhone介绍 1.2.2 Widget介绍 1.3 小结 第2章 Android开发环境搭建 2.1 ...

    Android开发环境搭建2.pdf

    指定设备名称,选择目标API级别,设定SD卡大小,选择合适的皮肤,如有需要还可以自定义硬件配置。创建完成后,这个AVD就可以在开发和测试应用时使用。 总结来说,搭建Android开发环境主要包括安装JDK、Eclipse、...

    Android应用源码之类似冰雪奇缘一类的三消游戏,用quick-x实现的,简单的demo-IT计算机-毕业设计.zip

    总的来说,这个毕业设计项目提供了一个实际的Android游戏开发案例,让学生有机会将理论知识转化为实际操作,对于提高Android开发技能和理解游戏开发流程具有重要意义。通过研究源码,学习者不仅能掌握Android编程,...

    基于Android手机平台的音乐播放器-毕业论文.doc

    - **扩展卡需求**:支持从外部存储设备(如SD卡)导入音乐,增加音乐资源的多样性。 - **时序图分析**:通过时序图展示各个功能模块间的交互逻辑,确保系统运行流畅。 2.2 系统结构与流程图:定义了系统的主要组件...

    基于Android手机平台的音乐播放器设计与实现.doc

    ### 基于Android手机平台的音乐播放器设计与实现 #### 1. 项目背景与目的 在当今社会,随着生活节奏的加快和技术的进步,...通过对项目的开发,不仅加深了对Android开发的理解,也为将来开发类似应用积累了宝贵经验。

    Anki-Android-2.5alpha47

    5. **内存泄漏检测与修复**:开发团队可能使用了内存分析工具,确保代码没有内存泄漏,避免长时间运行后导致性能下降。 6. **适应性界面**:AnkiDroid的界面设计考虑了不同屏幕尺寸和分辨率的设备,以适应各种...

    Google Android SDK开发范例大全(完整版)

    擅长嵌入式系统软件设计、J2ME游戏开发、Android开发,以及J2EE、JSP、Servlet、JavaBeans、PHP、C#等程序语言,熟悉面向对象技术与Eclipse、Netbeans开发工具,积累多年大型项目开发、跨系统整合经验。 目录 第1...

    Android面试题附答案

    在Android开发中,Activity和Fragment经常作为Controller,布局文件作为View,而数据模型则根据具体需求设计。 9. **Activity生命周期** - Activity的生命周期包括onCreate()、onStart()、onResume()、onPause()、...

    基于Android手机平台的音乐播放器

    此外,该项目也为后续开发者提供了参考案例和技术积累,有助于推动Android平台上音乐播放器应用的发展。 综上所述,基于Android手机平台的音乐播放器项目的完成,不仅丰富了Android平台上的应用生态,也为用户带来...

    Emma_for_Android

    使用模拟SD卡启动模拟器是必要的,因为代码覆盖率结果将存储在SD卡上。命令如下: ``` emulator -sdcard &lt;pathtosdcard.img&gt; & ``` 请注意,此时模拟器可能无法完全启动,因为尚未添加`emma.jar`文件。 **步骤4:...

    麦子学院Android开发教程之智能手机内存空间不足的问题.docx

    麦子学院 Android 开发教程之智能手机内存空间不足的问题 Android 系统是一种基于 Linux 的开源移动操作系统,广泛应用于智能手机和平板电脑等移动设备。然而,智能手机的内存空间有限,缓存和临时文件的积累将...

Global site tag (gtag.js) - Google Analytics