介绍
这篇文章将为大家详细讲解有关Android如何实现读取SD卡下所有三种文件名并用listView显示出来的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
具体如下:
MainActivity。Java
package com.zxl; import java.io.File; import java.util.ArrayList; import java.util.HashMap; import android.app.Activity; import android.os.Bundle; import android.os.Environment; import android.util.Log; import android.widget.ListView; import android.widget.SimpleAdapter; public class  Txt_sdkaActivity extends Activity  { private 才能;ListView  lv; ArrayList 才能,名字;/* *,才能nbsp; when 从而activity is first 创建只*/@Override才能 public 才能;void  onCreate (Bundle savedInstanceState), { ,,,super.onCreate (savedInstanceState); ,,,setContentView (R.layout.main); ,,,lv =,(视图),findViewById (R.id.lv); ,,,name =, new ArrayList (); ,,,if (Environment.getExternalStorageState () .equals (Environment.MEDIA_MOUNTED)), { ,,,,,File path =, Environment.getExternalStorageDirectory();//,获得SD卡路径 ,,,,,//,File path =, new 文件(“/mnt/sdcard/?; ,,,,,文件[],files =, path.listFiles();//,读取 ,,,,,getFileName(文件); ,,,} ,,,SimpleAdapter adapter =, new SimpleAdapter(名称,这一点,还以为,R.layout.pes, new String [], {,“Name",},, new int [], {, R.id.txt_tv }); ,,,lv.setAdapter(适配器); ,,,for (int 小姐:=,0;,小姐:& lt;, name.size();,我+ +),{ ,,,,,Log.i (“zeng",,“列表只名字:,“,+,name.get(我)); ,,,} ,,} private 才能;void  getFileName(文件[],文件),{ ,,,if (files !=, null),{//,先判断目录是否为空,否则会报空指针 ,,,,,for (File File :文件),{ ,,,,,,,if (file.isDirectory ()), { ,,,,,,,,,Log.i (“zeng",,“若是文件目录。继续读1“,+,file.getName () .toString (), +, file.getPath () .toString ()); ,,,,,,,,,getFileName (file.listFiles ()); ,,,,,,,,,Log.i (“zeng",,“若是文件目录。继续读2“,+,file.getName () .toString (), +, file.getPath () .toString ()); ,,,,,,,},{else ,,,,,,,,,String fileName =, file.getName (); ,,,,,,,,,if (fileName.endsWith (“.txt")), { ,,,,,,,,,,,HashMap map =, new HashMap (); ,,,,,,,,,,,String s =, fileName.substring (0,, fileName.lastIndexOf (“!”)) .toString (); ,,,,,,,,,,,Log.i (“zeng",,“文件名txt::,,,, +, s); ,,,,,,,,,,,map.put (“Name",, fileName .substring (0,, fileName.lastIndexOf (“!”))); ,,,,,,,,,,,name.add(地图); ,,,,,,,,,} ,,,,,,,} ,,,,,} ,,,} ,,} }
主要。xml
& lt; ? xml version=?.0“,编码=皍tf-8" ?比; & lt; RelativeLayout  xmlns: android=癶ttp://schemas.android.com/apk/res/android" android:才能layout_width=癴ill_parent" android:才能layout_height=癴ill_parent" android:才能取向=皏ertical",在 & lt; TextView才能 ,,,android: id=癅 + id/textView1" ,,,android: layout_width=癴ill_parent" ,,,android: layout_height=皐rap_content" ,,,android:文本=癅string/hello",/比; ,& lt;列表视图 ,,,android: id=癅 + id/lv" ,,,android: layout_width=癿atch_parent" null null null null null null null null null null null null null null null null null nullAndroid如何实现读取SD卡下所有三种文件名并用listView显示出来的方法