在将它们写入输出文件(java)后尝试打印行

时间:2013-10-06 13:55:50

标签: java

我有问题。我基本上被要求使用一种方法从输出文件中打印。所以开始我实际上开始用线条填充输出文件..然后当我试图实际读取它们并在屏幕上打印时出现了一个小问题。我实际使用'debug'选项,问题结果是在'line = input.nextLine()'代码行中,但我真的不知道为什么..我的意思是我们如何从输出中读取文件...帮助将不胜感激。

到目前为止,这是我的工作:

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

public class Problem_3 {

    public static void main(String[] args) {

        PrintWriter outFile = null;
        File f1 = new File("try.txt");


        try {

            outFile = new PrintWriter("try.txt");
            outFile.println("First line!");
            outFile.println("Second line!");
            outFile.println("Third line!");

            cat(f1);
        } catch (Exception e) {
            outFile.print("(1) Exception: " + e.getMessage()); // no such element exception
        }

        outFile.close();
    }
    /*
     * outFile = new PrintWriter(f1); outFile.println("Line 1");
     * outFile.println("Line 2"); outFile.println("Line 3"); outFile.print("");
     * cat(f1); } catch (Exception e) { System.out.println("(1)Exception: " +
     * e.getMessage()); } outFile.close(); }
     */

    public static void cat(File file) throws FileNotFoundException {

        Scanner input = null;
        String line = "";

        input = new Scanner(new FileReader(file));
        //line = input.next();
        //  line = input.nextLine();// this line calls the exception in the main method

        while ((line != null)) {
            System.out.println("In the while loop");
            System.out.println("Line  323" + line);
            return;
        }
        input.close();
    }
}

1 个答案:

答案 0 :(得分:1)

将代码修改为:

try {

    outFile = new PrintWriter("try.txt");
    outFile.println("First line!");
    outFile.println("Second line!");
    outFile.println("Third line!");

    outFile.close();


 } 
 catch (Exception e) {
    outFile.print("(1) Exception: " + e.getMessage()); // no such element exception
 }

 cat(f1);

在关闭文件之前,您无法阅读所写内容。