Java从目录中打开和读取文件

时间:2012-03-16 21:55:22

标签: java file java.util.scanner

我有一些代码可以打开一个目录,一些子目录,然后为每个txt文件创建File对象。然后我有一个扫描仪来扫描每个文件。当我使用scan.nextLine()时,它会将文件的名称返回给我,而不是打开文件并给我这些字符串。这是代码。

import java.io.*;
import java.util.Scanner;

public class DirTest
{

public void start()
{
String [] fileListing = null;

    //directory code from project

    File topDir = new File("TopDirectory");
    if (topDir.isDirectory());
    {
        String [] dirList = topDir.list();
        for(String name : dirList)
        {
            File midDir = new File("TopDirectory", name);
            if(midDir.isDirectory())
            {
                fileListing = midDir.list();
                for(String name2: fileListing)
                {
                    File files = new File(name, name2); 
                    System.out.println("Directory: " + midDir);
                    System.out.println("File: " + files);

                    // Scanner section, scans through fileListing[] files//
                    for(int i=0; i<3; i++)
                    {
                        Scanner scan = new Scanner(fileListing[i]);
                        String var1 = scan.nextLine();
                        System.out.println(var1);
                    }   
                }
            }
        }
    }
}
}

我应该在扫描前以某种方式打开每个文件吗? 谢谢你的任何建议!

1 个答案:

答案 0 :(得分:2)

试试这个:

    FileReader fr = new FileReader(fileListing[i]);
    Scanner scan = new Scanner(fr);

    // Scan here

    fr.close();