`

Android下的实现对本地指定和筛选文件的目录显示

阅读更多

条件:

       1.我们需要得到一些路径,某个文件目录下的。比如:"/kgmusic/download/' 下的。我打开手机看的是这个路径。

       2. 我们是为了筛选出.MP3 文件。然后显示。不希望出现说显示所有的文件

       3.确定用怎么样的方式用ListActivity 还是SimpleAdapter 通过list显示在自己自定的xml文件中

 

实现第一个条件:

     1. 这是有点傻哈, 我是这样的。我们在手机中看到路经不一定android 所对应的路经。怎么看呢。可以通过adb shell 去显示。比如说:"/kgmusic/download/' 。它在Android下的路径其实是"/sdcard/kgmusic/download/"

     

// 存放着音乐文件的路径
	private final String MUSIC_PATH = "/sdcard/kgmusic/download/";

      2.我们去实现FilenameFilter这个接口,取到filename结尾是.MP3的文件

 

	// 用来去筛选出对应的.mp3文件

	class musicfilter implements FilenameFilter {
		/*
		 * accept方法的两个参数的意义: dir:文件夹对像,也就是你原来调用list方法的File文件夹对像 name:当前判断的文件名,
		 * 这个文件名就是文件夹下面的文件
		 * 返回:这个文件名是否符合条件,当为true时,list和listFiles方法会把这个文件加入到返回的数组里,false时则不会加入
		 */
		public boolean accept(File dir, String filename) {
			// TODO Auto-generated method stub
			return (filename.endsWith(".mp3"));
		}
	}

 // 将这个文件显示在Listview 下 。我这里用的SimpleAdapter适配器去实现的。这里要两个xml.SetAlarm.this是这个本地Activity

	private void ListSongsName() {
		//首先是要得到music文件的路径
		File file=new File(MUSIC_PATH);
		List<Map<String,Object>> list= new ArrayList<Map<String,Object>>();
		//将所有的文件加入到一个list文件中
		if(file.list(new musicfilter()).length>0){
			
			for (File file1 : file.listFiles(new musicfilter())){
				Map<String,Object> map=new HashMap<String, Object>();
			   map.put("filename",new EFfile(file1).getFile().getName());
			   list.add(map);
			}
		}
		SimpleAdapter sa= new SimpleAdapter(SetAlarm.this, list, 
				R.layout.musiclist, new String[]{"filename"}, new int[]{R.id.MusicItem} );
		listview.setAdapter(sa);
		
	}

 贴下对应的mustlist.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/MusicItem"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
         
         />
 
</LinearLayout>

 


 

 

      

 

分享到:
评论

相关推荐

    android 根据指定路径获取本地视频列表显示,点击缩略图调用系统播放器进行播放

    在Android开发中,有时我们需要实现一个功能,即根据指定的本地路径展示视频列表,并能点击缩略图播放视频。这个功能对于许多应用,如视频管理器或者个人相册应用,都是至关重要的。以下是对这个标题和描述所涉及...

    Android查找指定目录下的视频或图片

    在Android开发中,有时我们需要实现一个功能,即在用户的设备上搜索特定目录下的视频或图片文件。这个功能在很多应用场景中都非常有用,比如媒体管理器、相册应用或者需要访问用户本地媒体数据的应用。以下是一些...

    安卓文件管理器简单实现,包含文件类型筛选,异步加载文件缩略图获取。

    这个类需要实现对本地存储(如内部存储和外部存储)的访问,以便用户可以浏览、选择和操作文件。以下是一些关键功能: 1. **文件遍历**:实现`getFiles()`方法,遍历指定目录下的所有文件和子目录。可以使用`java....

    文件选择控件(可以在指定目录下新建文件)

    在Android开发中,文件选择控件是一个至关重要的组件,它允许用户在特定的目录下浏览、选择文件,甚至创建新的文件。"文件选择控件(可以在指定目录下新建文件)"这一标题暗示了我们讨论的是一款能够提供这些功能的...

    Android PopuWindow 导航链级筛选

    总结来说,`PopuWindow`配合`CheckListView`在Android中能实现强大的导航链级筛选功能,通过合理的数据结构和事件处理,可以为用户提供流畅的多级筛选体验。在实际开发中,应注重用户体验,优化加载速度,同时考虑...

    ListView遍历指定地址的文件及文件夹

    在这个场景下,我们使用ListView来遍历并展示指定路径下的文件和文件夹,比如展示大量的电影列表。这种功能对于用户管理和浏览本地存储的多媒体内容非常实用。下面我们将详细探讨如何实现这个功能。 首先,我们需要...

    本地音乐播放器Demo

    3. **文件遍历与过滤**:在遍历文件系统时,可以使用File类的listFiles()方法列出指定目录下的所有文件。通过FileFilter实现文件类型的筛选,例如只选取.mp3文件。 4. **mp3文件信息读取**:Android的...

    Android源码——文件管理器源码.zip

    2. **文件列表**:显示指定目录中的文件和子目录,通常按照文件名、大小、类型、修改日期等属性进行排序。 3. **文件操作**:包括创建新文件/目录、重命名、删除、复制、移动、分享等基本操作。 4. **文件筛选与...

    miui的文件管理器 开源File Explorer.zip

    3. **目录遍历与文件筛选**:文件管理器需要能够列出指定目录下的所有文件和子目录,源码中会实现这一功能,同时可能包含对特定类型的文件进行过滤的逻辑。 4. **UI设计与Material Design**:MIUI的文件管理器遵循...

    轻松实现android MP3 播放器

    这里,`setDataSource()`方法用于指定MP3文件的路径,可以是本地存储路径(如SD卡)或网络URL。`prepare()`方法初始化播放器,`start()`方法则开始播放。 为了实现播放SDCARD中的所有音乐文件,你需要遍历SDCard上...

    Android课程设计---基于Android系统的音乐播放器设计与实现.doc

    【Android课程设计——音乐播放器开发】 在本次课程设计中,学生被要求开发一个基于Android系统的音乐播放器,目标是创建一个能够播放多种...同时,通过设计和实现用户友好的界面,对UI/UX设计也会有更深入的理解。

    android popupwindow 实现省市区联动选择

    总的来说,利用Android的PopupWindow实现省市区联动选择是一个涉及数据处理、UI设计和事件监听的综合实践,它需要开发者对Android的基础知识有深入理解,同时也展示了如何通过组件化思维提高代码质量。

    Android扫描本地音乐文件开发案例分享

    在Android应用开发中,有时我们需要实现本地音乐文件的扫描功能,以便用户能够浏览和播放设备上的音乐。本文将详细介绍如何在Android平台上扫描本地音乐文件,特别是针对QQ音乐下载的歌曲进行扫描的案例。 首先,...

    android实现相册功能

    在Android平台上,实现相册功能是一项常见的任务,它涉及到用户选择、查看以及管理手机本地或云端的图片和视频。在本篇文章中,我们将探讨如何利用Android SDK提供的工具和API来构建一个基本的相册应用。首先,我们...

    Android adb基础命令使用

    3. **无线文件同步**:结合无线连接,可以使用`adb push`和`adb pull`命令在无线状态下实现设备与电脑之间的文件同步。 通过熟练掌握以上ADB的基本操作,开发者可以高效地进行应用调试、数据管理、设备控制等工作,...

    android下拉二级联动效果实现

    在Activity或Fragment中加载省份和城市的数据,可以是从网络请求、本地数据库或者资源文件中获取。 ```java List&lt;Province&gt; provinces = loadProvinces(); // 假设已经有了加载数据的方法 ``` 3. 设置Adapter: ...

    logtool Android系统日志抓取脚本

    总结来说,logtool是Android开发者和测试人员的得力助手,它提高了日志抓取的效率,简化了对特定应用日志的筛选过程。通过灵活的参数设置,我们可以根据实际需求定制日志收集策略,更好地进行问题排查和应用性能分析...

    android spinner 三级联动

    Spinner在XML布局文件中可以通过`&lt;Spinner&gt;`标签进行声明,并通过设置`android:entries`属性指定一个数组资源或适配器来提供显示的选项。在代码中,我们可以通过`Spinner.setAdapter()`方法绑定一个`ArrayAdapter`...

    简单好用的文件浏览器

    在IT领域,文件浏览器是一种非常基础且实用的工具,它帮助用户轻松地浏览、管理和操作计算机上的文件和目录。本文将深入探讨“简单好用的文件浏览器”这一主题,主要关注其背后的编程技术和核心组件。 首先,我们来...

    android 中文开发指南

    为了让应用程序适应不同的语言和地区,开发者需要考虑如何实现国际化和本地化。这通常涉及到资源文件的管理和使用。 #### 十、意图和意图过滤器(Intents and Intent Filters) `Intent`是Android中一种非常重要的...

Global site tag (gtag.js) - Google Analytics