Was ist die Java: NoSuchElementException Fehler?

Auf der Suche nach Hilfe mit dem folgenden code...

package pkgPeople;

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

public class CreateWithoutSerialization {

    public static void main(String[] args) throws Exception
    {
        BankAccount bankAccount = new BankAccount(0, 0);
        Person person = new Person();
        String nm;
        int ht;
        int wt;
        long ba;
        double bal;
        File inFile = new File("G:/CS9.27/inperson.txt");
        File outFile = new File("G:/CS9.27/outperson.txt");
        PrintWriter writer = new PrintWriter(outFile);
        Scanner reader = new Scanner(inFile);

        nm = reader.nextLine();
        ht = reader.nextInt();
        wt = reader.nextInt();
        ba = reader.nextLong();
        bal = reader.nextDouble();

        person.setName(nm);
        person.setHeight(ht);
        person.setWeight(wt);
        bankAccount.setAcctID(ba);
        bankAccount.setBalance(bal);


        System.out.println(person.toString());

        //Write the attributes in ASCII to a file
        writer.printf("%s is the name of the person.\r\n",nm);
        writer.printf("%d inches is the height of %s.\r\n",ht, nm);
        writer.printf("%d pounds is the weight of %s\r\n",wt,nm);
        writer.printf("%d dollars is the balance of %s\r\n", bal, nm);
        writer.printf("%l is the ID of the bank account.\r\n", ba);



    }

}

Bei der Ausführung, bekomme ich diese exception..

Exception in thread "main" java.util.NoSuchElementException: No line found
at java.util.Scanner.nextLine(Unknown Source)
at pkgPeople.CreateWithoutSerialization.main(CreateWithoutSerialization.java:23)

Ist das ein Datei-Fehler? Habe versucht mehrere Updates, aber immer noch stecken.

  • Können Sie code für die Klasse "Person"?
  • Was haben Sie versucht und ich bin neugierig, um herauszufinden, in Ihren Worten, was der stacktrace sagt Sie?
  • Sind Sie sicher, dass inperson.txt enthält alle notwendigen Informationen? Kann man diese Datei?
  • versucht haben, erstellen Sie ein paar freie Zeilen in mein inperson.txt
  • es ist einfach nur eine leere Datei...ich weiß nicht, wie zu finden, den stacktrace.
  • Also, Sie versuchen das Lesen von Daten aus der Datei leer. Bin ich im Recht?
  • Sein können, müssen Sie zunächst überprüfen, ob die Dateien bereits vorhanden sind am gegebenen Standort und falls vorhanden, welche den Zugriff auf Attribute für diese Dateien also die Frage, ob Dateien sind read-only, hidden,etc.
  • Ja, MAKKAM, es ist eine leere Datei
  • Spigle - die Tatsache, dass Ihre Eingabezeile leer ist, ist wahrscheinlich die Ursache für dein problem. Siehe meine Antwort.
  • Wenn Ihr eine leere Datei, es ist Ihre Antwort. Es gibt keine nächste Zeile, so dass der scanner löst eine Ausnahme aus. Testen wenn Sie eine neue Zeile vor dem Aufruf von es, wenn Sie vermeiden wollen, dass die Ausnahme, oder würdevoll behandeln mit der Ausnahme.

InformationsquelleAutor D. Spigle | 2010-10-04
Schreibe einen Kommentar