2

我试图列出我创建的目录中的所有文件,当我创建目录时,我将每个联系人的文件扭曲到目录中。然后我希望能够列出目录内/内的所有这些文件。我已经尝试了一切,包括

String a = listFiles().tostring();

然而,什么也没有发生。总而言之,我想列出 SD 卡中自定义目录中的所有文件。

这是我更新的代码

String path = Environment.getExternalStorageDirectory().getAbsolutePath();
FileInputStream iStream =  new FileInputStream(path);
String read = path.getbytes().tostring();
4

2 回答 2

1

你必须看看这个教程如何构建一个android文件浏览器它会对你有很大帮助!!

这列出sdcard 中的所有文件夹和文件,您可以通过更改代码中currentDir的值来调整它以适应您的需要

于 2012-05-18T18:51:24.073 回答
0

此代码是旅行整个 sdcard 和列表文件。这可能对你有帮助..!

import java.io.*;
import java.util.*;
public class DirUtils {

  public static List recurseDir(String dir) {
      String result, _result[];

      result = recurseInDirFrom(dir);
      _result = result.split("\\|");
      return Arrays.asList(_result);
  }

  private static String recurseInDirFrom(String dirItem) {
    File file;
    String  result,list[];

    result = dirItem;

    file = new File(dirItem);
    if (file.isDirectory()) {
      list = file.list();
      File[] fileslist = file.listFiles(new MyDocFileFilter());
    if (fileslist != null) {
      for (File file1: fileslist) {
        System.out.println(file1.getAbsolutePath());
      }
    } 
    else {
      System.out.println("No Subdirectory Found.");
    }
      for (int i = 0; i < list.length; i++)
        result = result + "\n" + recurseInDirFrom(dirItem + File.separatorChar + list[i]);
      }
    return result;
  }

 static class MyDocFileFilter implements FileFilter
{
  private final String[] myDocumentExtensions 
               = new String[] {".java", ".png", ".html", "class"};

  public boolean accept(File file) {

    if (!file.isFile())
        return false;

    for (String extension : myDocumentExtensions) {
      if (file.getName().toLowerCase().endsWith(extension))
        return true;
    }
    return false;
  }
}

  public static void main(String arg[]) {
    DirUtils.recurseDir("your path ");



  }
}
于 2012-07-30T08:50:23.703 回答