有没有办法可以使用FileReader方法读取多个文本文件?

时间:2014-09-20 23:37:24

标签: java

这是我到目前为止所拥有的。它成功地阅读了章节1.txt并将其放入book.txt但是,我需要让它接受另外两章,这是我不知所措的地方。有没有办法可以使用FileReader方法读取多个文本文件?

import java.io.*; import java.util.*; public class CatFiles { public static void main(String[] args) throws FileNotFoundException, IOException { File compiledChapters = new File("Book.txt"); if(!compiledChapters.exists()) { compiledChapters.createNewFile(); } FileReader myReader = new FileReader("chapter 1.txt"); Scanner myScanner = new Scanner(myReader); PrintWriter myWriter = new PrintWriter("Book.txt"); while(myScanner.hasNextLine()) { String textLine = myScanner.nextLine(); myWriter.println(textLine); }
myReader.close(); myWriter.close(); } }

1 个答案:

答案 0 :(得分:0)

一种非常简单的方法就是这样做

FileReader myReader = new FileReader("chapter 1.txt");
Scanner myScanner = new Scanner(myReader);
PrintWriter myWriter = new PrintWriter("Book.txt");
while(myScanner.hasNextLine())
{
    String textLine = myScanner.nextLine();
     myWriter.println(textLine);
}
myReader.close();

FileReader myReader2 = new FileReader("chapter 2.txt");
Scanner myScanner2 = new Scanner(myReader2);
while(myScanner2.hasNextLine())
{
    String textLine = myScanner.nextLine();
     myWriter.println(textLine);
}
myReader2.close();

FileReader myReader3 = new FileReader("chapter 3.txt");
Scanner myScanner3 = new Scanner(myReader3);
while(myScanner3.hasNextLine())
{
    String textLine = myScanner.nextLine();
     myWriter.println(textLine);
}
myReader3.close();

myWriter.close();

但这非常难看,可能需要采用自己喜欢的方式

WriteChapter("Chapter 1.txt");
WriteChapter("Chapter 2.txt");
WriteChapter("Chapter 3.txt");