歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android讀取SD卡下面所有的TXT文件名 listView顯示出來

Android讀取SD卡下面所有的TXT文件名 listView顯示出來

日期:2017/3/1 10:46:06   编辑:Linux編程

Android讀取SD卡下面所有的TXT文件名,listView顯示出來。

  1. package your.txtsdka;
  2. import java.io.File;
  3. import java.util.ArrayList;
  4. import java.util.HashMap;
  5. import android.app.Activity;
  6. import android.os.Bundle;
  7. import android.os.Environment;
  8. import android.util.Log;
  9. import android.widget.ListView;
  10. import android.widget.SimpleAdapter;
  11. public class Txt_sdkaActivity extends Activity {
  12. private ListView lv;
  13. ArrayList name;
  14. /** Called when the activity is first created. */
  15. @Override
  16. public void onCreate(Bundle savedInstanceState) {
  17. super.onCreate(savedInstanceState);
  18. setContentView(R.layout.main);
  19. lv = (ListView) findViewById(R.id.lv);
  20. name = new ArrayList();
  21. if (Environment.getExternalStorageState().equals(
  22. Environment.MEDIA_MOUNTED)) {
  23. File path = Environment.getExternalStorageDirectory();// 獲得SD卡路徑
  24. // File path = new File("/mnt/sdcard/");
  25. File[] files = path.listFiles();// 讀取
  26. getFileName(files);
  27. }
  28. SimpleAdapter adapter = new SimpleAdapter(this, name, R.layout.sd_list,
  29. new String[] { "Name" }, new int[] { R.id.txt_tv });
  30. lv.setAdapter(adapter);
  31. for (int i = 0; i < name.size(); i++) {
  32. Log.i("zeng", "list. name: " + name.get(i));
  33. }
  34. }
  35. private void getFileName(File[] files) {
  36. if (files != null) {// 先判斷目錄是否為空,否則會報空指針
  37. for (File file : files) {
  38. if (file.isDirectory()) {
  39. Log.i("zeng", "若是文件目錄。繼續讀1" + file.getName().toString()
  40. + file.getPath().toString());
  41. getFileName(file.listFiles());
  42. Log.i("zeng", "若是文件目錄。繼續讀2" + file.getName().toString()
  43. + file.getPath().toString());
  44. } else {
  45. String fileName = file.getName();
  46. if (fileName.endsWith(".txt")) {
  47. HashMap map = new HashMap();
  48. String s = fileName.substring(0,
  49. fileName.lastIndexOf(".")).toString();
  50. Log.i("zeng", "文件名txt:: " + s);
  51. map.put("Name", fileName.substring(0,
  52. fileName.lastIndexOf(".")));
  53. name.add(map);
  54. }
  55. }
  56. }
  57. }
  58. }
  59. }

Copyright © Linux教程網 All Rights Reserved