Eingabe eines Textfeldes mit Inhalt einer Datei vergleichen

Status
Nicht offen für weitere Antworten.

Recover

Mitglied
Hi!

Es gibt da so ein Spiel im Radio das nennt sich 100.000 für 10. Da kann man mit einem 10€ Schein
100.000€ gewinnen, wenn die ID des Scheines stimmt.

Nun hab ich hier schon 60 x 10€ Scheine liegen und es ist immer ziemlich mühsam diese dann mit dem
Code zu vergleichen. Deswegen hab ich mich mal an den Rechner gemacht um ein Programm zu schreiben
was mir die Arbeit etwas erleichtert.

Ich habe eine Datei die heist "Scheine.txt". Darin sind die IDs der ganzen Scheine untereinander aufgelistet.
So hier:

X18352056228
Y84624395007
U84632101646

Nun habe ich in Swing ein GUI erstellt welches ein Textfeld und einen Button besitzt. Die Funktion der beiden
dürfte klar sein. Jetzt habe ich leider nur noch ein Problem. Die Eingabe im Textfeld soll schauen ob es die gleiche
im Scheine.txt schon gibt. Diese ID soll dann angezeigt werden. Aber auch wenn die letzten 2-4 Zahlen Stimmen sollen
die IDs angezeigt werden. Die übereinstimmenenden Zahlen sollen dann auch nach Möglichkeit rot gefärbt werden.

Ich hab hier mal meinen bisherigen Code und wäre über Hilfe sehr dankbar!

Code:
import java.io.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;

public class Programm {

    public static void main(String[] args) throws IOException {

        Fenster frame = new Fenster();
        frame.setVisible(true);
    }

}

class Fenster extends JFrame implements ActionListener {

    JLabel ausgabeLabel = new JLabel();
    JTextField textfeld1 = new JTextField(12);
    BufferedReader   tastatur    =   new BufferedReader(new InputStreamReader(System.in));

    public Fenster() {
        this.setTitle("100.000 für 10");
        this.setSize(300, 150);
        this.setLocationRelativeTo(null);
        this.setLayout(new FlowLayout());
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

        JButton suchenButton = new JButton("Suchen");
        JPanel panelEingabe, panelAusgabe, panelButton;
        panelEingabe = new JPanel();
        panelAusgabe = new JPanel();
        panelButton = new JPanel();

        this.add(panelEingabe);
        this.add(panelButton);
        this.add(panelAusgabe);        
        
        panelEingabe.setLayout(new FlowLayout());
        panelEingabe.add(textfeld1);

        panelButton.setLayout(new FlowLayout());
        panelButton.add(suchenButton);
        suchenButton.addActionListener(this);

        panelAusgabe.setLayout(new FlowLayout());
        panelAusgabe.add(ausgabeLabel);

    }

    public String geleseneDaten() {
        String inhalt = "";
        try {
            FileReader datei = new FileReader("scheine.txt");
            BufferedReader readDatei = new BufferedReader(datei);

            inhalt = readDatei.readLine();
        } catch (IOException io) {
            ausgabeLabel.setText("Datei nicht gefunden!");
        }
        return inhalt;
    }

    public void actionPerformed(ActionEvent ae) {
        
        
    }

}
 
S

SlaterB

Gast
zunächst einmal:
lege die 60 Strings doch direkt in ein String-Array in eine Hilfs-Klasse,
ist eine Textdatei einfacher zu handeln?

und selbst wenn: dann hat die Transformation der Text-Datei in ein String-Array doch nichts damit zu tun,
was da in der Datei drinsteht oder wie die Daten weiterverarbeitet werden,
versuche solche Dinge logisch zu strukturieren und einfache Fragen zu stellen
("Wie liest man Strings in ein String-Array ein?" statt 20 Zeilen Beschreibung und 50 unnötige Zeilen von den 70 Zeilen Code )

deine Operation geleseneDaten führt nur einmal readLine aus,
liest also nur eine Zeile ein,
wenn du mehr willst, dann mache öfter readLine,
bis readLine null zurückgibt (Dateiende)

edit:
ok, fehlt noch mehr außer Datei einlesen, dafür ist die vollständige Beschreibung schon hilfreich, stimmt ;)
 

Recover

Mitglied
Die Textdatei hab ich gewählt, damit man schnell mal ein Code hinzufügen kann, ohne das Programm umzuschreiben.

Also lass ich jetzt den Inhalt der Datei in ein Array einlesen?
Mit welchem Befehl lass ich die Zahlen von hinten an kontrollieren ob sie übereinstimmen?
Und wie realisier ich das mit dem Einfärben der letzten Zahlen?

Paar Codeschnippsel wären ganz hilfreich, wenn es denn keine Umstände macht.
 
S

SlaterB

Gast
> Also lass ich jetzt den Inhalt der Datei in ein Array einlesen?
lesen statt lassen?
da du die Anzahl am Anfang nicht kennst, füge jede Zeile in eine Liste ein,
die Liste kannst du am Ende weiterverwenden oder ein Array draus machen

Schleife über alle Zeilen, steht in jedem Lehrbuch beim Datei-Einlesen

> Mit welchem Befehl lass ich die Zahlen von hinten an kontrollieren ob sie übereinstimmen?
mit den String-Befehlen die du kennen solltest,
bevor du so eine Aufgabe anfängst, ich bringe sie dir nicht alle bei ;)
charAt, contains, indexof, substring usw., siehe Lehrbuch


> Und wie realisier ich das mit dem Einfärben der letzten Zahlen?
das wüßte ich spontan nicht, ich würde in ein Lehrbuch schauen ;)
 

Recover

Mitglied
Ok, danke Slater.

Ich weis jetzt wo ich ansetzen muss.
Der Thread hätt wohl besser ins Anfängerforum gepasst....
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
kodela Eingabe für TextArray bedingt sperren Allgemeine Java-Themen 3
M Kein Scanner Fehler durch falsche EIngabe Allgemeine Java-Themen 4
N Eingabe wird immer als "false" ausgegeben Allgemeine Java-Themen 6
N String Array Eingabe Allgemeine Java-Themen 6
W Java Telegram Bot - Eingabe durch User Allgemeine Java-Themen 2
M Keine weitere Eingabe in der Main möglich. Eventueller Ansatz über while. Allgemeine Java-Themen 8
G Eingabe auftrennen Allgemeine Java-Themen 3
K OOP Daten addieren sich bei GUI-Eingabe Allgemeine Java-Themen 10
D Flasche Eingabe erkennen Allgemeine Java-Themen 4
K Eingabe mit Char vergleichen klappt nicht! Allgemeine Java-Themen 2
0 Eingabe nicht möglich... Allgemeine Java-Themen 12
Sin137 Interface Eingabe wird doppelt angezeigt Allgemeine Java-Themen 2
C Cmd Eingabe als Administrator Allgemeine Java-Themen 4
J Anzahl der Zeichen bei Eingabe begrenzen Allgemeine Java-Themen 5
M Eingabe von Arrays geht über gewünschte Anzahl hinaus Allgemeine Java-Themen 2
S Erste Schritte Arrayliste alphabetisch sortieren mit Eingabe Allgemeine Java-Themen 9
Cayton Bruchrechner stürzt bei eingabe negativer Zahlen ab Allgemeine Java-Themen 4
S Antlr Grammatik übersetzt ohne Fehler, dennoch wird Zahl nicht als Eingabe erkannt Allgemeine Java-Themen 4
M Befehl in Runtime ausführen der Eingabe benötigt Allgemeine Java-Themen 3
Z Taschenrechner größere Eingabe Allgemeine Java-Themen 3
R Programm soll warten bis eine Passwort eingabe gemacht wurde. Allgemeine Java-Themen 6
M Tastatur eingabe über Buttons Allgemeine Java-Themen 15
D zeichenerkennung für umlaute bei eingabe Allgemeine Java-Themen 4
M Eingabe Überprüfen Allgemeine Java-Themen 3
D Batch-Datei Eingabe Allgemeine Java-Themen 2
N IP-Adresse Eingabe abfragen? Allgemeine Java-Themen 4
S Listener Implentierung bei Eingabe in Textfeld Allgemeine Java-Themen 2
P MS Dos Eingabe Allgemeine Java-Themen 7
M JTable: Anzahl Zeichen bei Eingabe Allgemeine Java-Themen 2
G Überprüfung der Eingabe ob Typ korrekt Allgemeine Java-Themen 4
G Problem mit Quellcode, Eingabe wird nicht angezeigt --HELP-- Allgemeine Java-Themen 2
B Programm soll auf die Eingabe vom Mouselistener warten. Allgemeine Java-Themen 19
M Programmablauf nach letzter eingabe erst fortsetzten Allgemeine Java-Themen 2
G eingabe Allgemeine Java-Themen 4
K Warten auf die Eingabe aus Fenster.... Allgemeine Java-Themen 2
B TextField ohne Eingabe Allgemeine Java-Themen 7
H Frage zu Wildcard Eingabe in Java! Allgemeine Java-Themen 5
L javaformular auf website (eingabe per email zusenden) Allgemeine Java-Themen 3
B Java Eingabe HELP ( eclipse ) Allgemeine Java-Themen 4
F JTextField Eingabe automatisch bestaetigen Allgemeine Java-Themen 17
F Unsichtbare Eingabe Allgemeine Java-Themen 10
C Kettenelemente mit Bezeichner durch eingabe? Allgemeine Java-Themen 4
M Suche , bereits während der eingabe ?? Allgemeine Java-Themen 4
O regulärer Ausdruck zum durchsuchen eines Strings verwenden Allgemeine Java-Themen 2
T Rotationswinkel eines Bildes bestimmen Allgemeine Java-Themen 4
C Probleme beim Erstellen eines runnable-jar files Allgemeine Java-Themen 1
J JavaScript innerhalb eines Java Projekts ausführen Allgemeine Java-Themen 2
Encera Größe eines Objektes in Byte berechnen Allgemeine Java-Themen 2
8u3631984 Prüfen ob min. ein Element eines Sets in einem anderen Set enh Allgemeine Java-Themen 4
M Array Rang eines Elements Allgemeine Java-Themen 4
OnDemand Teile eines Links entfernen Allgemeine Java-Themen 6
H Auslesen eines (LDAP-)Attributs in Active Directory Allgemeine Java-Themen 2
W JSON parsen eines ,mit JS.stringify erstellten Strings Allgemeine Java-Themen 27
H Textposition eines gedrehten Textes verschieben Allgemeine Java-Themen 8
berserkerdq2 run-methode eines Threads so programmieren, dass 30x die Sekunde etwas ausgeführt wird. Allgemeine Java-Themen 44
E Ersetzen eines Bildes in der Kopfzeile eines Word-Docx-Dokuments mit Apache POI XWPF Allgemeine Java-Themen 0
N Fahrtrichtung eines selbstfahrenden Auto ändern Allgemeine Java-Themen 3
T Letztes Zeichen eines Strings enfernen Allgemeine Java-Themen 14
S Übergabe eines Sortierkriteriums für ein Artikel Array mittels BiPredicate<Artikel, Artikel> Allgemeine Java-Themen 13
gotzi242 Schatzsuche mithilfe eines O(log n) Algorithmus Allgemeine Java-Themen 2
C Koordinaten LONG/LAT eines neuen Punktes in bestimmter Entfernen und Winkel berechnen Allgemeine Java-Themen 3
Tobero Meine Funktion für das beinhalten eines Punktes in einem Kreis funktioniert nicht Allgemeine Java-Themen 5
LimDul Direktes return eines Array geht nicht Allgemeine Java-Themen 20
S Mittelwert anhand eines Stream berechnen Allgemeine Java-Themen 5
kodela Breite eines erweiterten Monitors feststellen Allgemeine Java-Themen 5
R Zeilen eines 2d Arrays abwechselnd links und rechts mit Nullen auffüllen Allgemeine Java-Themen 14
Zrebna Alternative Darstellung eines Codesnippets Allgemeine Java-Themen 33
kodela Inhalt eines Arrays ändert sich mysteriös Allgemeine Java-Themen 2
bueseb84 Wget mit Wildcards - oder wie lädt man bei JFrog die letzte Version eines Artifacts herunter Allgemeine Java-Themen 3
N Erkennen eines Programs Allgemeine Java-Themen 2
N Pausieren eines Programmes Allgemeine Java-Themen 4
D Input/Output Implementierung eines CommandHandlers/Parsers für viele Eingaben Allgemeine Java-Themen 26
M Gibt es eine API die den aktuellen Wert eines Indikators beim Trading zurückgibt? Allgemeine Java-Themen 7
F Wie bekommt man alle Filenamen eines Webserver Verzeichnisses Allgemeine Java-Themen 6
A Fehler beim Öffnen eines Projekts Allgemeine Java-Themen 6
N Eigenschaften eines Buttons per Setter verändern Allgemeine Java-Themen 5
S Ausfuehrung eines Programms aufzeichnen..? Allgemeine Java-Themen 4
X Ermittlung eines doppelte Paars mit Streams Allgemeine Java-Themen 50
Stonie Prüfen von direkter Implementierung eines Interfaces Allgemeine Java-Themen 7
S Vorbereitung eines Praktikums Allgemeine Java-Themen 4
H Aufruf eines Web Service anhand übergebenen Parameter Allgemeine Java-Themen 2
M Weiterleiten von empfangenen Nachrichten eines StompSessionHandlers Allgemeine Java-Themen 1
J Programm zum Suchen eines Wortes im Dateisystem Allgemeine Java-Themen 4
H Rename eines Projekts Allgemeine Java-Themen 1
J Fenstergröße eines anderen Programmes auslesen Allgemeine Java-Themen 9
ReinerCoder auf Klassen innerhalb eines package zugreifen Allgemeine Java-Themen 22
Meeresgott Erste Schritte Sourcetree - Git | Suchen eines Commits Allgemeine Java-Themen 2
E Status eines USB Mikrofon abfragen Allgemeine Java-Themen 2
DaCrazyJavaExpert OOP Ansätze und Tipps zum Porgrammieren eines Taschenrechners Allgemeine Java-Themen 25
A OOP Problem beim Berechnen der größten Fläche eines Ringes Allgemeine Java-Themen 19
JavaNewbie2.0 Start eines Anderen Programm erkennen Allgemeine Java-Themen 6
I Verbindung eines Java-Plugins mit Webserver Allgemeine Java-Themen 3
L Auswertung eines Testes funktioniert nicht Allgemeine Java-Themen 37
G Iteratoren - Wie kann man mithilfe von Iteratoren nur jeden zweiten Wert eines TreeSets ausgeben? Allgemeine Java-Themen 4
GreenTeaYT Elemente eines 2Dim LinkedList von links nach rechts ausgeben? Allgemeine Java-Themen 0
B Spalten eines 2d-Arrays Allgemeine Java-Themen 2
M Rechenprogramm eines wissenschaftlichen Taschenrechners Allgemeine Java-Themen 4
S Eigenschaften (hier Verknüpfung) eines Files lesen Allgemeine Java-Themen 2
E Typüberprüfung eines chars Allgemeine Java-Themen 5
H Hilfe bei Erstellung eines Hilfe Fenster bei Tastendruck (F1 bei Win98) Allgemeine Java-Themen 5

Ähnliche Java Themen


Oben