从一个文件读取,修改并输出到Java中的另一个文件

时间:2019-07-07 17:47:51

标签: java file

任务是读取文件,创建与输入文件匹配但添加数字行的新文件

我有几个例子可以复制。我尝试了新的File(),新的FileReader()和BufferedReader()。我似乎无法从输入文件中获取任何数据

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.PrintWriter;
import java.util.Scanner;
import java.util.ArrayList;


public class Hw1_43 {

    public static void main(String[] args) throws FileNotFoundException
    {
        // Prompt user for input file name
        Scanner in = new Scanner(System.in);
        System.out.print("Enter input file name: ");
        String inputFileName = in.next();  // instantiate input file name for later use
        Scanner inputFile = new Scanner(new FileReader(inputFileName));

        //ArrayList<String> line = new ArrayList();
        int counter = 0;
        while (inputFile.hasNextLine()) {
            String line = inputFile.nextLine();
            System.out.println(counter + line);
            counter ++;
        }


        System.out.println(inputFileName);
    }

}

还让我将输入文件读取并将其写入输出文件之后,输出文件在哪里,以便可以查看它以确保它正确无误?

1 个答案:

答案 0 :(得分:0)

FileReader仅从文件读取。您需要创建一个FileWriter,该文件可写入文件(例如FileWriter outputFile = new FileWriter(“ C:/tmp/output_file.txt”))。当您从FileWriter中读取内容时,请在每行前添加行号,然后写入FileWriter。

我建议使用BufferedReader而不是Scanner。然后,您可以使用.readLine()或.lines()方法,然后将它们流式传输到BufferedWriter中。