0

我对 Java 还是很陌生,我正在开发一个类项目,我不确定如何编写程序来获取 userInput(fileName) 并从中创建一个新对象。我的指示是编写一个程序,该程序从用户读取文件名,然后从该文件中读取数据,创建对象(类型 StudentInvoice)并将它们存储在 ArrayList 中。

这就是我现在的位置。

    public class StudentInvoiceListApp {

    public static void main (String[] args) {
    Scanner userInput = new Scanner(System.in);
    String fileName;

    System.out.println("Enter file name: ");
    fileName = userInput.nextLine();

    ArrayList<StudentInvoice> invoiceList = new ArrayList<StudentInvoice>();
    invoiceList.add(new StudentInvoice());
    System.out.print(invoiceList + "\n");

    }
4

2 回答 2

0

您可以尝试编写一个用于从流中序列化/反序列化对象的类(请参阅本文)。

于 2012-10-02T19:22:08.003 回答
0

好吧,正如罗伯特所说,没有足够的关于存储在文件中的数据格式的信息。假设文件的每一行都包含一个学生的所有信息。您的程序将包括逐行读取文件并为每一行创建一个 StudentInvoice。像这样的东西:

public static void main(String args[]) throws Exception {
    Scanner userInput = new Scanner(System.in);
    List<StudentInvoice> studentInvoices = new ArrayList<StudentInvoice>();
    String line, filename;

    do {
        System.out.println("Enter data file: ");
        filename = userInput.nextLine();
    } while (filename == null);

    BufferedReader br = new BufferedReader(new FileReader(filename));
    while ( (line = br.readLine()) != null) {
        studentInvoices.add(new StudentInvoice(line));
    }

    System.out.println("Total student invoices: " + studentInvoices.size());
}
于 2012-10-02T21:20:05.533 回答