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); }
} }
}
}
|