`
xfjt297857539
  • 浏览: 152230 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

android sdcard文件存储 + 媒体库更新方法

阅读更多
图片存储

if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))
{

     if(image != null)
     {
            String sdardDir = Environment.getExternalStorageDirectory().toString();
            String name = sdardDir+"/appname/images/"+imagename+".jpg";
             java.io.File file = new java.io.File(sdardDir+"/appname/images");
             boolean bool = true;
             if(!file.isDirectory())
             {
                  bool = file.mkdirs() ;
             }

            if(bool)

           {

              File iamgeFile = new File(path);
             if(!iamgeFile.exists())
            {
              try {iamgeFile.createNewFile();} catch (IOException e1) {e1.printStackTrace();error= "1"+e1.toString(); } 
             }
             FileOutputStream fOut = null;  
             try {  fOut = new FileOutputStream(iamgeFile);   } catch (FileNotFoundException e) {  e.printStackTrace();
                 error= "2"+e.toString(); } 
  image.compress(Bitmap.CompressFormat.JPEG, 100, fOut);  // png格式图片 image.compress(Bitmap.CompressFormat.png, 100, fOut);
            try { fOut.flush();    } catch (IOException e) {   e.printStackTrace(); 
              error="3"+ e.toString(); }  
            try { fOut.close();} catch (IOException e) {    e.printStackTrace();
             error= "4"+e.toString(); }

       }

}

else{

  Toast t = Toast.makeText(this, "无sdcard",  Toast.LENGTH_SHORT);
          t.show();

}



媒体库更新

- 通过 Intent.ACTION_MEDIA_MOUNTED 进行全扫描
public void allScan(){  
        sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://" 
                + Environment.getExternalStorageDirectory())));  
    } 

-  通过 Intent.ACTION_MEDIA_SCANNER_SCAN_FILE 扫描某个文件 
public void fileScan(String fName){  
        Uri data = Uri.parse("file:///"+fName);  
        sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, data));  
    } 



详细http://wenku.baidu.com/view/537b9b8ecc22bcd126ff0c97.html

http://devbbs.doit.com.cn/viewthread.php?tid=31528

分享到:
评论

相关推荐

    android 写入SDcard 文件

    在Android平台上,对SDCard(外部存储)进行文件操作是应用程序与用户交互的重要部分,尤其对于需要存储大量数据或媒体文件的应用来说。本教程将详细解释如何在Android中读写SDCard文件,非常适合初学者入门。 首先...

    Android 文件 内存目录获取 sdcard目录获取

    通过以上方法,开发者可以有效地在Android 2.3及其后续版本中获取和管理内存目录和SDCard目录,为用户提供安全、便捷的文件存储服务。在实际开发中,还需关注Android系统的更新和最佳实践,以保持代码的兼容性和效率...

    android从SDcard中读取文件信息

    在Android平台上,开发人员经常需要处理文件操作,特别是在涉及到用户数据存储或媒体展示时。本教程将详细讲解如何从SD卡(外部存储)中读取文件信息,并将其中的图片加载到`ImageView`组件中进行显示。这涉及到...

    安卓SD卡文件管理更新信息相关-无需权限将文件保存到sdcard或应用缓存文件中.rar

    但有一种特殊情况,即使用Android的"媒体存储"API,从Android 10(API级别29)开始,应用可以写入公共目录而无需请求权限,只要文件被添加到媒体库(例如图片、音频或视频)。 描述中提到“程序如果跑不起来需要自...

    播放SDcard的全部音频文件.

    在Android平台上,播放SDcard(外部存储)中的所有音频文件是一项常见的任务,尤其对于音乐播放器或者媒体应用来说。这个任务涉及到多个知识点,包括文件系统操作、多媒体处理、以及Android的权限管理。以下是对这些...

    Android数据存储(内置sdcard2)

    新的存储模型引入了媒体库的概念,应用可以通过ContentProvider访问公共文件,而不是直接操作文件系统。 四、案例分析 根据提供的文件夹名"Day02_store_2(外置sdcard)",这可能是一个关于在Android设备外部存储...

    Android编程实现获取多媒体库视频、音频、图片的方法

    当文件被添加、删除或修改时,需要刷新媒体库,以便让媒体库保持最新的状态。Android 提供了 MediaScannerConnection 类,可以用来刷新媒体库。下面是一个简单的示例代码: ```java MediaScannerConnection....

    Android扫描音乐文件

    通过`query()`方法,可以查询到媒体库中的音乐信息,例如`MediaStore.Audio.Media.EXTERNAL_CONTENT_URI`代表所有外部存储的音频文件。 4. **ListView与Adapter**:为了在UI中显示扫描到的音乐文件,通常会使用`...

    基于android系统的文件浏览器

    4. /sdcard(或外部存储):通常指的是用户的可移动存储,用户可以在这里存储个人文件和媒体。 二、Android权限管理 在Android中,对文件的操作需要相应的权限。对于本项目,由于仅限于对sdcard(外部存储)的操作...

    android SD卡文件浏览器

    Android系统的文件管理基于Linux文件系统,采用目录树结构,根目录为"/",其中"/sdcard"或"/storage/emulated/0"通常代表内部存储(相当于SD卡)的公共可访问区域。文件浏览器允许用户查看和操作这些文件,如同...

    Android数据存储(内置sdcard图片缓存)

    这样做是因为外部存储空间大,适合存储大量媒体文件,并且在用户卸载应用后,这些文件仍然可以保留,便于其他应用访问。 首先,我们需要获取到SD卡的路径。在Android中,可以使用`Environment....

    ANDROID主要的文件

    根据提供的标题、描述以及部分文件列表内容,我们可以深入探讨Android系统的文件结构及其重要性。对于从事Android应用开发或系统级编程的技术人员来说,了解这些文件的存放位置与作用至关重要。 ### 1. 根目录(/)...

    Android文件管理器源代码

    1. **目录结构**:Android的根目录通常包括系统目录(如/data、/system、/mnt)和外部存储目录(如/sdcard)。源代码会展示如何遍历这些目录并显示文件和子目录。 2. **文件操作**:源代码中会包含`java.io`和`java...

    Android:实现手机拍照并保存照片

    // 通知系统媒体库更新 MediaScannerConnection.scanFile(this, new String[]{imageFile.getAbsolutePath()}, null, new MediaScannerConnection.OnScanCompletedListener() { @Override public void ...

    Android 文件管理 文档阅读

    对于图片和文档的分类,你可以使用Android的多媒体存储库API(如 `MediaStore`),它提供了查询和过滤媒体文件的能力。通过查询 `MediaStore.Images` 和 `MediaStore.Files` 表,可以获取到手机内的所有图片和文档。...

    android浏览SD卡目录文件,实现音频播放

    这个功能可以让用户自由选择存储在外部存储设备(如SD卡)上的音频文件进行播放,增加了应用的灵活性和用户体验。下面我们将详细讲解如何实现这个功能。 1. **访问SD卡** Android系统提供了`Environment`类来获取...

    SDCard精致的小例子

    6. **ContentResolver**:对于媒体文件(如图片、音频、视频),还可以通过`ContentResolver`和`MediaStore`类来操作,这样可以与系统的媒体库同步。 7. **Android Q及以上版本的变化**:自Android 10 (API 29)起,...

    Android 文件管理器.zip

    - Android系统自动扫描并组织图片、音乐和视频文件到对应的媒体库中,用户可以通过媒体应用访问。文件管理器可以帮助用户直接浏览这些文件夹,如 `/Pictures`, `/Music`, `/Videos` 等。 8. **隐藏文件和目录**: ...

    ANDORid的sdcard实例

    此外,Android提供了一些工具类,如`MediaScannerConnection`,用于扫描新添加或修改的文件,使其能立即在系统的媒体库中显示。例如: ```java MediaScannerConnection.scanFile(context, new String[]{external...

    Android FileManager文件管理器源码

    其中,data分区存储应用程序的数据和设置,cache分区用于缓存数据,而sdcard则通常用于存储用户文件和媒体内容。 Android FileManager的核心功能包括: 1. **目录和文件浏览**:源码中的`FileListAdapter`类通常...

Global site tag (gtag.js) - Google Analytics