如何使用txt文件读取以下信息,并将数字仅写到另一个文本文件中?我将其显示到控制台,但它也不会写入文件。


琼斯369218658389641
史密斯6011781008881301
韦恩5551066751345482
葡萄酒4809134775860430
比奇9925689541232325
路加福音7586425896325410
白兰地4388576018410707
瑞安2458912425860439


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

public class test {
public static void main(String[] args) throws Exception {
    // Create a File instance
    java.io.File file = new java.io.File("accounts.txt");
    // Create a Scanner for the file
    Scanner input = new Scanner(file);
    // Read data from a file
    while (input.hasNext()) {
        String accountName = input.next();
        Long cardNumber = input.nextLong();
//this is where I want to write just the numbers to a file called cardnums.txt
        file = new java.io.File("cardnums.txt");
        java.io.PrintWriter output = new java.io.PrintWriter(file);
        output.println(cardNumber);
        System.out.println(cardNumber);
    }
    // Close the file
    input.close();

}
}


我知道了

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

public class test {
public static void main(String[] args) throws Exception {
    // Create a File instance
    java.io.File file = new java.io.File("accounts.txt");
    // Create a Scanner for the file
    Scanner input = new Scanner(file);
    // Read data from a file
    file = new java.io.File("cardnums.txt");
    java.io.PrintWriter output = new java.io.PrintWriter(file);
    while (input.hasNext()) {
        String accountName = input.next();
        Long cardNumber = input.nextLong();
//this is where I want to write just the numbers to a file called credit.txt
        output.println(cardNumber);
        System.out.println(cardNumber);
    }
    // Close the file
    input.close();
    output.flush();
    output.close();
}
}

最佳答案

    java.io.PrintWriter output = new java.io.PrintWriter(file);


首先,为什么每次都使用相同的文件名循环调用此函数?

其次,一旦在循环外定义它,

调用outputstream对象上的flush(),然后在循环后关闭(如果不为null,则最好在finally块中)。

if(output!=null) {
    output.flush();
    output.close();
}

关于java - 使用Java从一个文件读取到另一个文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40708691/

10-11 19:26
查看更多