2017-08-23 2 views
0

Ich möchte eine benutzerdefinierte Ausnahme erstellen, die Linien anzeigt, wo ein Fehler auftritt.Wie erstellt man benutzerdefinierte Ausnahmen in Java, die Fehler in Zeilen anzeigen?

Ich bin Verarbeitung .txt Dateien, in denen Struktur sieht wie folgt aus:

[ONE]

BESCHREIBUNG = AA

A = [2 3 4 5 6 7 8 8]

B = [000 000 000 000]

C = [1 2 3 4 5 A4 1b 00]


Und so weiter ...

Das Problem ist, dass manchmal in dieser Datei die schließende Klammer fehlt, wenn ich es verarbeite.

Ich habe neue Ausnahme geschaffen, wie dies

public class MalformedTxtFile extends Exception { 

    private static final long serialVersionUID = 33436325235234; 

    public MalformedTxtFile(){ 

    } 

    public MalformedTxtFile(String message){ 
     super(message); 
    } 

    public MalformedTxtFile(Throwable cause){ 
     super(cause); 
    } 

    public MalformedTxtFile(String message, Throwable cause){ 
     super(message, cause); 
    } 

} 

sieht diese Datei wirklich groß ist, so möge ich den Benutzer zeigen, in welcher Zeile das Problem passieren.

Wie wird die MalformedTxtFile-Klasse erweitert, um diese unvollständigen Zeilen anzuzeigen?

Und wie erstellt man einen guten Versuch catch Block?

+0

Warum nicht einfach die Zeilen in die Nachricht der Ausnahme schreiben? –

+0

Was genau meinst du? –

+0

'werfen neue MalformedTxtFile (" Fehler in Zeile 433: Zwerge sind vorhanden ")' –

Antwort

0

Bitte fügen Sie unter Code, hoffe, dass funktioniert.

new MalformedTxtFile().getStackTrace()[1].getLineNumber(); 
+0

Ich glaube, dass die Fragen über die Datei Zeilennummer ist. Nicht der Code. – c0der

+0

Genau, ich muss alle Zeilen anzeigen, wo etwas fehlt –

Verwandte Themen