2016-05-13 91 views
1

我试图做一个程序,从一个文本文件中读取数据,该文件包含他们在测试中得到的学生姓名和分数。我想以这种方式输出它读取数据文件并输出到另一个文件

我开始尝试读取txt文件,所以我可以重新安排他们,然后输出到另一个文件,但我不知道我做错了什么。相反,它会打印到exe文件中,而不是打印到的文件。

import java.io.File; 
 
import java.util.Scanner; 
 

 
public class ReadConsole { 
 

 
    public static void main(String[] args) { 
 

 
     try { 
 
      Scanner input = new Scanner(System.in); 
 
      System.out.print("Enter the file name with extention : "); 
 
      File file = new File(input.nextLine()); 
 

 
      input = new Scanner(file); //scans the file 
 

 

 
      while (input.hasNextLine()) { 
 
       String line = input.nextLine(); 
 
       System.out.println(line); 
 
      } 
 
      input.close(); 
 

 
     } catch (Exception ex) { 
 
      ex.printStackTrace(); 
 
     } 
 
    } 
 

 
}

Click Here for Image

回答

1

而不是使用System.outPrintStream,你可以创建一个PrintStream写入到文件:

PrintStream output = new PrintStream(new File("output.txt")); 
while (input.hasNextLine()) { 
    String line = input.nextLine(); 
    output.println(line); 
} 

记住关闭两个input Scanneroutput PrintStream

public static void main(String[] args) { 
    Scanner input = new Scanner(System.in); 
    System.out.print("Enter the file name with extention : "); 
    File file = new File(input.nextLine()); 

    try (Scanner fileInput = new Scanner(file); // scans the file 
      PrintStream output = new PrintStream(new File("c:/output.txt"))) { 

     while (input.hasNextLine()) { 
      String line = input.nextLine(); 
      output.println(line); 
     } 
    } 
} 
+0

你可以编辑它的代码我不知道如何做到这一点没有得到错误 –

+0

更新我的答案。 – andrucz

+0

是否有自动使它读取Data.txt而不必将其放在exe文件? –

相关问题