Datensatz auf ein bestimmten Parameter einzugrenzen

M

mwn

Mitglied
Hallo, ich bin gerade dabei ein Programm zu schreiben welches eine cvs Datei einlesen soll und anschließend soll der Nutzer aus der zweiten Spalte Werte auswählen können. Ich habe bereits die Datei eingelesen aber ich finde einfach nirgends eine Lösung wie der Nutzer anschließend diese Werte erhalten kann. Hat jemand einen Tipp für mich?
"Ihre Anwendung soll die Datei einlesen und es dem Nutzer ermöglichen, den Datensatz auf ein bestimmtes Bundesland einzugrenzen."ist die konkrete Aufgabenstellung. In diesem Fall befindet sich Der Datensatz "Bundesland" in der zweiten Spalte der cvs Datei
Vielen Dank im Voraus!
 
temi

temi

Top Contributor
Was bedeutet "auswählen"? Was bedeutet "erhalten"?

Hat dein Programm eine GUI? Dann wären vielleicht eine Liste, Table oder Combobox geeignet zur Darstellung und zur Auswahl von Werten.

EDIT:

Oder du öffnest die CSV einfach mit Excel...
 
M

mwn

Mitglied
Was bedeutet "auswählen"? Was bedeutet "erhalten"?

Hat dein Programm eine GUI? Dann wäre vielleicht eine Liste oder Combobox geeignet zur Darstellung und zur Auswahl von Werten.
Ich bin noch ziemlich am Anfang also es ist ein sehr simples Programm.
"Ihre Anwendung soll die Datei einlesen und es dem Nutzer ermöglichen, den Datensatz auf ein bestimmtes Bundesland einzugrenzen."ist die konkrete Aufgabenstellung. In diesem Fall befindet sich der Datensatz "Bundesland" in der zweiten Spalte der cvs Datei.
Ich muss Datei leider mit einem TextEditor öffnen
 
kneitzel

kneitzel

Top Contributor
Die Frage ist dann erst einmal, wie du die Daten, die Du eingelesen hast, nun im Speicher vorhältst.

Wenn es um ein Java Programm geht, dann ist
Ich muss Datei leider mit einem TextEditor öffnen
auch nicht wirklich zielführend. Damit bereitest Du die Eingabedatei ja lediglich vor.

Das
Ich habe bereits die Datei eingelesen
wird ja hoffentlich nicht bedeuten, dass Du die Datei in einem Text Editor eingelesen hast sondern dass Du diesen Schritt in Deinem (Java) Programm bereits erfolgreich erledigt hast.

Und bezüglich vorgehen ist es doch einfach: Wie gehst Du vor, wenn Du einen Stapel Blätter hast und du willst nur einen Stapel mit Blättern, die ein bestimmtes Kriterium erfüllen. Wie gehst Du genau vor?
 
M

mwn

Mitglied
Java:
Scanner fileScan = new Scanner(new File("src/RKI.csv"));
        String zeile;

        while (fileScan.hasNext()) {
            zeile = fileScan.nextLine();
            System.out.println(zeile);
            
        }

Ich habe sie in meinem Java Programm eingefügt.
Die Frage ist dann erst einmal, wie du die Daten, die Du eingelesen hast, nun im Speicher vorhältst.

Wenn es um ein Java Programm geht, dann ist

auch nicht wirklich zielführend. Damit bereitest Du die Eingabedatei ja lediglich vor.

Das

wird ja hoffentlich nicht bedeuten, dass Du die Datei in einem Text Editor eingelesen hast sondern dass Du diesen Schritt in Deinem (Java) Programm bereits erfolgreich erledigt hast.

Und bezüglich vorgehen ist es doch einfach: Wie gehst Du vor, wenn Du einen Stapel Blätter hast und du willst nur einen Stapel mit Blättern, die ein bestimmtes Kriterium erfüllen. Wie gehst Du genau vor?
Ich muss meine Stapel nach einem bestimmten Kriterium trennen?
 
temi

temi

Top Contributor
Dir ist schon klar, dass du nur eine Variable "zeile" hast, in der sich genau ein String speichern lässt?

Du überschreibst also diese Variable immer wieder mit neuen Werten (die weiteren Zeilen).

Die Aufgabe ist leider nicht sehr klar. Soll der Benutzer das Bundesland für die Eingrenzung vorher angeben? Oder sollen erst alle Bundesländer eingelesen werden und dem Benutzer eine Auswahl gegeben werden?

Vermultlich wirst du die eingelesenen Werte in einer entsprechenden Datenstruktur speichern müssen. Kennst du Array oder List<>?

Um eine eingelesene Zeile in ihre Spalten aufzuteilen bietet sich String.split() an: https://docs.oracle.com/javase/7/docs/api/java/lang/String.html#split(java.lang.String)
 
kneitzel

kneitzel

Top Contributor
Also neben der Tatsache, dass Du nur eine einzige Zeile hast, die Du ständig überschreibst:
Jede Zeile besteht ja aus einer Reihe von Werten, die durch Komma (oder ; bei Excel mit Deutscher Regionalisierung) getrennt sind.

Daher gehört zum Einlesen erst einmal, dass Du auch alle Zeilen speichern kannst und jede Zeile dann aus den x Werten besteht.

Wie Du das am Besten machen kannst, hängt davon ab, was ihr so schon genutzt habt. Evtl. habt Ihr abstrakte Datentypen wie List und so schon verwendet. Oder ihr dürft/sollt die Collections von Java verwenden. Im Worst Case habt ihr nur Arrays, was aber auch geht. (Zur Not wird die Datei mehrfach gelesen - ein erstes Mal um die Anzahl der Datensätze zu ermitteln und das zweite Mal um dann die Daten zu lesen.)
 
temi

temi

Top Contributor
Mal eine kurze Skizze für den Fall, dass das Bundesland vorher bekannt ist. Dann muss nämlich nichts gespeichert werden und du musst nur dein bisheriges Programm etwas erweitern.

  1. Eine Zeile der Datei einlesen.
  2. Die Zeile splitten, um an das Bundesland zu kommen.
  3. Wenn das Bundesland dem gesuchten Bundesland entspricht, die Zeile ausgeben.
  4. Wenn es eine nächste Zeile gibt, weiter mit 1.
 
M

mwn

Mitglied
Also das ist die gesamte Aufgabenstellung,
Schreiben Sie eine Anwendung, die mit Hilfe von exponentieller Glättung die Corona-Zahlen für die nächsten Wochen vorhersagen kann. Benutzen Sie dafür die Datei, die die summierten Corona-Fälle pro Bundesland und Kalenderwoche darstellt.
Ihre Anwendung soll die Datei einlesen und es dem Nutzer ermöglichen, den Datensatz auf ein bestimmtes Bundesland einzugrenzen. Zusätzlich wird der Nutzer nach dem Wert des Parameters alpha gefragt. Dann werden die Werte eines exponentiellen Glättungsprozesses für die Corona-Fälle berechnet und mit den echten Werten verglichen, um den Fehler zu berechnen. Der Fehler ist dann die Summe der absoluten Abweichungen (Betrag) zwischen den echten und den berechneten Werten. Der Nutzer bekommt bei jeder Kombination von Bundesland und alpha den Fehler angezeigt sowie die kleinste und höchste absolute Abweichung zwischen den zwei Werten. Basiert darauf kann er den besten Wert von alpha wählen. Optional ist die Anwendung in der Lage den Wert für nächste Woche für einen Wert von alpha und ein Bundesland vorherzusagen.

Ich kann leider selber noch nicht sehr viel dazu sagen, weil ich noch ziemlich am Anfang in Java stehe und ich die Aufgabenstellung erstmal durcharbeite. Aber eure Tipps haben mir schon mal etwas weiter geholfen das ganze zu verstehen danke!
 
kneitzel

kneitzel

Top Contributor
Das kann man langsam Schritt für Schritt angehen. Und der erste Schritt sollte sein, die Daten erst einmal so einzulesen, dass diese für die weitere Bearbeitung bereit stehen. Und davon hast Du bisher noch nicht wirklich etwas erreicht.

Und bei so einer Aufgabe gehe ich davon aus, dass du auch schon einige Grundlagen gehabt haben müsst, denn die Aufgabe setzt ja einiges voraus. Ihr werdet also bestimmt schon mit String gearbeitet und diverse Datentypen näher kennen gelernt haben.
 
temi

temi

Top Contributor
dass du auch schon einige Grundlagen gehabt haben müsst, denn die Aufgabe setzt ja einiges voraus.
Sehe ich auch so. Meinen Beitrag #8 kannst du dafür vergessen ;)
Und der erste Schritt sollte sein, die Daten erst einmal so einzulesen, dass diese für die weitere Bearbeitung bereit stehen.
Ich würde dafür eine separate Klasse vorsehen.

Aber echt schwierig, da richtig zu helfen, weil wir deinen Kenntnisstand, bzw. das Ziel der Aufgabe (also das Thema, was vertieft werden soll, wie Klassen, Listen, OOP, Entwurfsmuster oder alles zusammen) nicht kennen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P [Webdriver] einen Datensatz signieren Allgemeine Java-Themen 0
A Java - Suche nach Datensatz mit DateChooser Allgemeine Java-Themen 0
K Wiederholungen in Datensatz erkennen?! Allgemeine Java-Themen 6
G WindowAdapter - Datensatz wird nicht komplett gespeichert Allgemeine Java-Themen 7
O Jar lässt sich auf bestimmten Pc nicht starten Allgemeine Java-Themen 18
kodela bestimmten Dateityp immer mit jar-Datei öffnen Allgemeine Java-Themen 17
I DOM-Parser - Element im Element an bestimmten Stellen auslesen Allgemeine Java-Themen 1
C Movement auf bestimmten Weg bestimmen Allgemeine Java-Themen 11
S Apache POI Filtern nach bestimmten Kriterium Allgemeine Java-Themen 1
C Config nach bestimmten Wertdurchsuchen. Allgemeine Java-Themen 2
V Bilder bei bestimmten Zeiten wechseln, bitte um Hilfe Allgemeine Java-Themen 5
N Das Ende von bestimmten zeilen in text datei ändern und speichern Allgemeine Java-Themen 3
FrittenFritze Swing Apache Batik - Zoom an einer bestimmten Stelle Allgemeine Java-Themen 4
K Bestimmten Bereich eines Strings lesen Allgemeine Java-Themen 6
L Erste Schritte Java Date Format Pattern bestimmten Allgemeine Java-Themen 2
B Sprachdatei anhand von bestimmten Kriterien zerschneiden Allgemeine Java-Themen 0
L Von ArrayList abgeleitete Klasse nur mit bestimmten Objekten füllen Allgemeine Java-Themen 1
A Fehlerhafte Nst Berechnung einer bestimmten Fkt. (Bisektion) Allgemeine Java-Themen 10
KilledByCheese String an bestimmten Stellen teilen Allgemeine Java-Themen 2
M Ein Programm das nur von einem bestimmten Programm geöffnet werden kann Allgemeine Java-Themen 7
V Klassenname von allen Klassen mit einer bestimmten Eigenschaft bekommen Allgemeine Java-Themen 2
C Generic-Funktion nur bei bestimmten Typen erlauben Allgemeine Java-Themen 6
H Bestimmte Aufgaben zur bestimmter Zeit/ in bestimmten Intervallen Allgemeine Java-Themen 3
E Tool um Methodenaufrufe aus bestimmten Pkg zu finden Allgemeine Java-Themen 2
S Methoden Stunden seit einem bestimmten Zeitpunkt Allgemeine Java-Themen 3
H Bestimmten Wert aus String parsen Allgemeine Java-Themen 7
J Ist eine Instanz von einem bestimmten Object Typ? Allgemeine Java-Themen 6
N Zahl mit bestimmter Länge und nur bestimmten Zahlen generieren lassen Allgemeine Java-Themen 7
T Sechsecke, erkennen von bestimmten Werten Allgemeine Java-Themen 9
A Excel nach bestimmten Inhalt durchsuchen Allgemeine Java-Themen 8
F Dynamisch ein Objekt einer bestimmten Subklasse erstellen Allgemeine Java-Themen 7
c_sidi90 Werte an bestimmten Position aus PDF in DB sichern Allgemeine Java-Themen 2
L Java TimeZone für bestimmten offset -> Bessere Möglichkeit? Allgemeine Java-Themen 2
L Sicherstellen das 2x die gleichen Daten unter bestimmten Keys enthalten sind. Allgemeine Java-Themen 6
H Bestimmten String mit Pattern und Matcher herauslesen => kein erfolg Allgemeine Java-Themen 9
T Javaprogramm unter Linux auf bestimmten Kern starten/laufen lassen ? Allgemeine Java-Themen 22
S JavaCC : SKIP Token nur für bestimmten Bereich ?? Allgemeine Java-Themen 2
B PDF lesen funktioniert bei bestimmten Dateien nicht mit pdfview Allgemeine Java-Themen 4
isowiz java.util.List: Sortierung nicht nach bestimmten Attribut? Allgemeine Java-Themen 4
D Ereigniss zur bestimmten Uhrzeit Allgemeine Java-Themen 3
Developer_X Ein Array nach einem bestimmten Attribut sortieren Allgemeine Java-Themen 3
D Objekte nur unter bestimmten Voraussetzungen erzeugen Allgemeine Java-Themen 4
B Scheduler soll bestimmten Job stoppen Allgemeine Java-Themen 4
J Jar zu einer bestimmten Uzeit Ausführen Allgemeine Java-Themen 8
Schandro Datei öffnen mit... Bestimmten Dateityp mit einen Java-Programm öffnen lassen Allgemeine Java-Themen 5
R Drucken über bestimmten Drucker Allgemeine Java-Themen 11
T Bestimmten Inhalt aus Manifest.MF auslesen Allgemeine Java-Themen 8
K Suche alle Objekte einer bestimmten Klasse Allgemeine Java-Themen 2
R bestimmten HTML Code per JAva lesen lassen Allgemeine Java-Themen 7
J Konstruktor-Aufruf nur aus einem bestimmten Package erlauben Allgemeine Java-Themen 5
R Ab bestimmten Trennzeichen linke Seite. Allgemeine Java-Themen 2
O Klassen mit bestimmten Interface finden Allgemeine Java-Themen 11
C Farbpunkt von einer bestimmten Fensterposition lesen Allgemeine Java-Themen 7
S installer mit bestimmten features? Allgemeine Java-Themen 2
N Dateien mit einer bestimmten Erweiterung suchen Allgemeine Java-Themen 9
M Problem mit bestimmten ASCII Codes Allgemeine Java-Themen 3
S addAtPosition - Zahl an einer bestimmten Position einfügen Allgemeine Java-Themen 8
M PDF-Datei nach einer bestimmten zeichenfolge durchsuchen Allgemeine Java-Themen 2
JavaJüngling beliebige Collection die Comperable Elemente enthält als Parameter Allgemeine Java-Themen 37
B JAX - RS.... Multiple parameter application/x-www-form-urlencoded.... Allgemeine Java-Themen 6
B Parameter Konstruktor plus rechnen Allgemeine Java-Themen 6
L Die abzuleitende Klasse als Parameter übergeben Allgemeine Java-Themen 4
W Haben Konstruktoren in Java eigentlich immer mindestens einen Parameter? Allgemeine Java-Themen 4
I Array Parameter mit 2 Klassen - NullPointerException Allgemeine Java-Themen 3
F URI mit Parameter klappt nicht Allgemeine Java-Themen 1
H Aufruf eines Web Service anhand übergebenen Parameter Allgemeine Java-Themen 2
temi best practice: Parameter überprüfen, wo? Allgemeine Java-Themen 9
S Parametrisierte jUnit 5-Tests mit eigenen Datentypen/Klassen-Objekten als Test-Parameter Allgemeine Java-Themen 0
M If-Abfrage mit Parameter Allgemeine Java-Themen 8
I Javaaufruf aus Batch inkl. Parameter (Adminrechte) Allgemeine Java-Themen 2
P Java https proxy (-Dhttps.proxyHost) Start-Parameter funktioniert nicht? Allgemeine Java-Themen 2
N Methoden Generic: Rückgabetyp als Class-Parameter übergeben Allgemeine Java-Themen 3
K Java FX Zu startenden FXML-Controller per Parameter wählen Allgemeine Java-Themen 2
F Enum-werte als Methoden-Parameter übergeben Allgemeine Java-Themen 6
T Klassen Parameter weitergabe Allgemeine Java-Themen 1
C Überschreiben mit kontravariante Parameter Allgemeine Java-Themen 13
M Parameter auslesen im Servlet Allgemeine Java-Themen 0
perlenfischer1984 Wann ist ein Parameter Check sinnvoll Allgemeine Java-Themen 7
N Vererbung Parameter muss 2 Bedingungen erfüllen Allgemeine Java-Themen 2
Sogomn Methode als Parameter? Allgemeine Java-Themen 3
T Parameter Allgemeine Java-Themen 6
R Parameter Adapter - Design Allgemeine Java-Themen 1
I Methode verallgemeinern (Methode als Parameter)? Allgemeine Java-Themen 10
F In OSX: Java-Programm über URI-Scheme aufrufen mit Parameter? Allgemeine Java-Themen 0
H Generics als Parameter Allgemeine Java-Themen 1
N [stream-api] Parameter pro Typ zählen Allgemeine Java-Themen 1
NicoDeluxe Maximale Parameter Allgemeine Java-Themen 5
M final vor dem parameter eines Konstruktors Allgemeine Java-Themen 1
S Servlet, per URLConnection Mit String Http Parameter mitsenden Allgemeine Java-Themen 3
M Parameter-Datei einlesen (zeilenweise); Dateiintegrität Allgemeine Java-Themen 7
H JasperReport: Parameter befüllen Allgemeine Java-Themen 7
Joew0815 JList + JTableModel: Parameter der Tabelle übergeben Allgemeine Java-Themen 10
Y Applet/Html - Wie Java-Methode aufrufen, die einen Parameter erwartet? Allgemeine Java-Themen 3
G Polymorphie Funktion als Parameter Allgemeine Java-Themen 8
G Methoden Unterschiedliche viele Parameter Allgemeine Java-Themen 17
F Parameter im Link /jar-Aufruf Allgemeine Java-Themen 12
S OOP Designrichtlinie Parameter Prüfung Allgemeine Java-Themen 7
C char und char-Array als parameter übergeben Allgemeine Java-Themen 6
B Array Parameter Problem Allgemeine Java-Themen 3
C Reflektions, Benutzer soll Konstruktor auswählen und Parameter übergeben können Allgemeine Java-Themen 5

Ähnliche Java Themen


Oben