java - android 读取多个txt文件并整理出来

标签 java android file find storage

我遇到了一个小问题。 我有一个名为“Save”的 map (在 Android 手机上),在该文件夹中我有几个 .txt 文件。

我知道如何进入该文件夹,并且我可以读取 1 个 txt 文件(硬编码),但我希望它是动态的。

我想要这样的东西:

public void onClick(View v) {

             File root = Environment.getExternalStorageDirectory();

             save = root.toString()+"/Save/";

                if (save.startsWith("3_test")){
                    System.out.println("FOUND!");
                } else {
                    System.out.println("NOT FOUND!");
                }

        }

我有一个名为 3_test.txt 的 txt 文件,但他无法通过这种方式找到它,如果我对其进行硬编码,它确实可以找到它。

问题是我不知道如何“扫描”Save 文件夹中的所有文件,然后对其进行“if”检查。

希望有人能帮我解决这个问题。

最佳答案

我认为您的代码在 Java 中也不起作用:您的 save 变量包含 de root 文件夹下的 Save 文件夹的路径。 要实现过滤的目录列表,您可以尝试在 Save 文件夹的 File 对象上使用 list() 方法,传递自定义 java.io.FilenameFilter实现,因此它将扫描目标文件夹的全部内容,并仅返回与您的约束匹配的文件的名称:

 public void onClick(View v) {

         File root = Environment.getExternalStorageDirectory();
         File saveFolder= new File(root, "Save");

         String[] files=saveFolder.list(
            new FilenameFilter() {
                public boolean accept(File dir, String name) {
                //define here you filter condition for every single file
                    return name.startsWith("3_test");

                }
            });

         if(files.length>0) {
             System.out.println("FOUND!");
         } else {
             System.out.println("NOT FOUND!");
         }
     }

关于java - android 读取多个txt文件并整理出来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9466240/

相关文章:

android - 最新 Okhttp 中的主机拦截器 HttpUrl.parse IllegalArguementException

android - 负数输入(EditText)得到无符号

java - 如何让异步在后台运行线程?

c++ - 逐行读取txt

python - 从文件输入 numpy 数组

java - 递归删除导致栈溢出错误

Java Pokemon 程序 --> 删除 map 条目时出现并发修改异常

java - 任何用于匹配名称的消歧工具/API?

c - C语言完全打开文件

java - 开始无流程游戏开发