Android下的实现对本地指定和筛选文件的目录显示
来源:互联网 发布:空燃比传感器数据 编辑:程序博客网 时间:2024/05/16 07:10
Android下的实现对本地指定和筛选文件的目录显示
- 博客分类:
- 2014-09-Android 实现对本地指定文件目录下的显示
文件筛选ListViewSimpleAdapter
条件:
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/";
// 存放着音乐文件的路径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"));
- }
- }
// 用来去筛选出对应的.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 stubreturn (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);
- }
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>
0 0
- Android下的实现对本地指定和筛选文件的目录显示
- Android对本地txt的文件读取
- Android对本地xml的文件读取
- win32控制台下实现查找并显示指定目录下的指定类型文件
- 对指定目录下的文件进行筛选,并重命名拷贝到另一个目录
- C语言 递归地删除一个指定目录下所有指定类型的文件
- 写一段代码可以对本地的文件进行读写
- 花生壳+Tomcat实现外网对本地项目的访问
- Android复制Assets目录下的文件到指定目录
- 遍历指定目录下的图片文件 显示在gridview
- ASP.NET 删除指定目录下的文件和目录
- PHP递归删除指定目录下的文件和目录
- PHP递归删除指定目录下的文件和目录
- PHP递归删除指定目录和目录下的文件
- 遍历某一指定目录下的文件和目录
- 以树状形式显示指定目录下的文件和文件夹
- 遍历指定目录下的所有文件和目录, 以及子目录下的文件和目录
- C++实现Linux下遍历指定目录下的文件
- 常用的if 判断选项
- qt4典型的信号槽的实现
- 树的子结构
- php实现循环链表
- 股票学习21
- Android下的实现对本地指定和筛选文件的目录显示
- Android仿虾米音乐播放器之自定义进度条seekbar
- 北大ACM3468——A Simple Problem with Integers~~线段树的应用
- 苹果开发者证书生成流程
- 访问图像像素
- hdu 1281棋盘游戏 匈牙利算法
- leetcode 239: Sliding Window Maximum
- The Summary of 100 & the past year.
- [Android] 修改Android Virtual Device Manager 创建虚拟机默认路径