扫描文件及文件夹

package com.bwie.demo;import java.io.File;import java.io.FileFilter;import java.util.ArrayList;import java.util.List;public class Demo {    private static ArrayList<String> list1;    private static ArrayList<String> list2;    /**     * @param args     */    public static void main(String[] args) {        // TODO Auto-generated method stub        list1 = new ArrayList<String>();        list2 = new ArrayList<String>();        File file = new File("E:\\安装包");        init(file);                for (String string : list1) {                        System.out.println("文件:"+string);        }        for (String string : list2) {            System.out.println("文件夹:"+string);        }                 System.out.println("文件个数:"+list1.size()+"   文件夹个数:"+list2.size());    }    private static void init(File file) {        if (file.exists()) {            File[] filepath = file.listFiles(new FileFilter() {                public boolean accept(File file) {                    // TODO Auto-generated method stub                    if (file.isDirectory()) {                        list2.add(file.getName());                        return true;                    } else {                        // 文件                        list1.add(file.getName());                        return true;                    }                }            });            if (filepath != null) {                for (File file2 : filepath) {                    if (file2.isFile()) {                        list1.add(file2.getName());                    } else {                        init(file2);                    }                }            }        } else {            System.out.println("没有此盘");        }    }}

扫描图片

import java.io.File;import java.io.FileFilter;import java.util.ArrayList;import java.util.List;public class du {private static List<File> list;public static void main(String[] args) {    File file=new File("c:\\");    setData(file);;}private static void setData(File file) {    list = new ArrayList<File>();    File[] fs=file.listFiles(new FileFilter() {                public boolean accept(File pathname) {            // TODO Auto-generated method stub        if(pathname.isDirectory()){        return true;            }else{            String name = pathname.getName();            return (name.endsWith(".png")||name.endsWith(".jpg")||name.endsWith(".bmp"));        }                    }    });    if(fs!=null){        for(File f:fs){            if(f.isFile()){                list.add(f);                System.out.println(list.toString());            }else{                setData(f);            }        }    }    }}

扫描视频歌曲

import java.io.File;import java.io.FileFilter;import java.io.IOException;import java.util.ArrayList;import com.bwie.adapter.MyAdapter;import android.media.MediaPlayer;import android.os.Bundle;import android.os.Environment;import android.app.Activity;import android.view.Menu;import android.widget.ListView;import android.widget.MediaController;import android.widget.VideoView;public class MainActivity extends Activity {    private static ArrayList<File> list;    private ListView lv;    private VideoView vv;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        /*// 找到该布局文件下的控件        lv = (ListView) findViewById(R.id.lv);*/                //找到该布局文件下的播放视频的控件        vv = (VideoView) findViewById(R.id.vv);        // 创建file类        String path = Environment.getExternalStorageDirectory().getPath();        /* File file = new File(path+"/images"); */  //这是扫描图片的路径        /*File file = new File(path);*/  //这是扫描歌曲的路径        File file = new File(path);//这是扫描视屏的路径        // 创建集合对象        list = new ArrayList<File>();        // 调用方法进行扫描并过滤该文件夹,并收集扫描出来的图片文件        saoMiao(file);        // 打印扫描出来的图片文件        for (File ff : list) {            System.out.println(ff.getName());        }        /*         * //为listview设置适配器 lv.setAdapter(new MyAdapter(MainActivity.this,         * list));         */                        /**         *  播放扫描出来的歌曲         */    /*    MediaPlayer player = new MediaPlayer();        try {            // 获取路径            System.out.println(list.get(0).getPath() + "===========");            player.setDataSource(list.get(1).getPath());// 直接获取文件的路径            // 准备好硬件            player.prepare();            // 开始播放            player.start();        } catch (IllegalArgumentException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (SecurityException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (IllegalStateException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }*/                        /**         * 播放视频         */        //设置播放视频的路径        vv.setVideoPath(list.get(0).getPath());        //为videoview设置控制器        MediaController controller = new MediaController(MainActivity.this);        vv.setMediaController(controller);        //开始播放视频        vv.start();         }    private static void saoMiao(File file) {        // 列出该文件夹下的所有文件及文件夹        File[] fs = file.listFiles(new FileFilter() {            public boolean accept(File pathname) {                if (pathname.isDirectory())// 如果是文件夹的话就直接收集这个文件夹                {                    return true;                } else {                    /*                     * return pathname.getName().endsWith(".png") ||                     * pathname.getName().endsWith(".jpg") ||                     * pathname.getName().endsWith(".bmp");                     */                    /* return pathname.getName().endsWith(".mp3"); */                    return pathname.getName().endsWith(".3gp");                }            }        });        // 将集合进行遍历        if (fs != null) {            for (File f : fs) {                if (f.isFile())// 若是文件就直接收藏起来                {                    list.add(f);                } else {// 若是文件夹的话利用递归的方法进行再次扫描文件夹                    saoMiao(f);                }            }        }    }}

更多相关文章

  1. android子菜单&&组菜单
  2. 使用“aapt dump”查看APK内容
  3. 使用Toast显示提示信息框
  4. Android(安卓)RatingBar 使用示例
  5. Linux调试工具之:ftrace
  6. android笔记4-xml解析
  7. No 93 · android xml的生成和解析
  8. Chapter 2 Navigating Android(安卓)Studio(下)
  9. ToolBar基本使用及自定义ToolBar

随机推荐

  1. Android 系统名字、版本、API level的对
  2. android 打开GPS的几种方式
  3. android 播放Raw文件夹下的音乐文件
  4. android中APK开机自动运行
  5. Android重写SimpleCursorAdapter例子
  6. android中Notification的使用
  7. Android Studio出现Failed to open zip f
  8. Android四大组件——广播(BroadcastRecei
  9. Android 2.3 编译
  10. 修改Android 模拟器IMEI