Java 读取数据文件并输出到另一个文件

Java 读取数据文件并输出到另一个文件,java,Java,我正在尝试制作一个程序,从包含学生姓名和考试成绩的文本文件中读取数据。我想以这种方式输出它 我开始尝试读取txt文件,这样我就可以重新排列它们,然后输出到另一个文件,但我不确定我做错了什么。相反,它会打印到exe中,而不是我希望打印到的文件中 导入java.io.File; 导入java.util.Scanner; 公共类读控制台{ 公共静态void main(字符串[]args){ 试一试{ 扫描仪输入=新扫描仪(System.in); System.out.print(“输入扩展名为:”)

我正在尝试制作一个程序,从包含学生姓名和考试成绩的文本文件中读取数据。我想以这种方式输出它

我开始尝试读取txt文件,这样我就可以重新排列它们,然后输出到另一个文件,但我不确定我做错了什么。相反,它会打印到exe中,而不是我希望打印到的文件中

导入java.io.File;
导入java.util.Scanner;
公共类读控制台{
公共静态void main(字符串[]args){
试一试{
扫描仪输入=新扫描仪(System.in);
System.out.print(“输入扩展名为:”)的文件名;
File File=新文件(input.nextLine());
输入=新扫描仪(文件);//扫描文件
while(input.hasNextLine()){
String line=input.nextLine();
系统输出打印项次(行);
}
input.close();
}捕获(例外情况除外){
例如printStackTrace();
}
}

}
您可以创建写入文件的
PrintStream
,而不是使用
System.out
PrintStream

PrintStream output = new PrintStream(new File("output.txt"));
while (input.hasNextLine()) {
   String line = input.nextLine();
   output.println(line);
}
请记住同时关闭
输入扫描仪
输出打印流

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);
        }
    }
}

你能把它编辑成代码吗?我不知道怎么做才能不出错。不管怎样,我可以让它自动读取Data.txt而不必输入exe?与其根据输入文本创建一个文件,不如使用Data.txt的路径创建:file file file=new file(“Data.txt”);