Einlesen von Datei

Windows10

Bekanntes Mitglied
Wie kann man von einer Datei einlesen, und dabei zählen wie viele Werte in der Datei enthalten sind? Dann die Anzahl der Werte einfach in ein Array speichern?
 

Tarrew

Top Contributor
ReadIn() ist wohl irgendeine Funktion aus einer Library von eurer Schule. Da kann ich nichts mit anfangen. Ich verstehe sowieso nicht wieso irgendwelche Schulen etc da ihre eigenen Libraries für Ein&Ausgaben benutzen.

Hast du schonmal irgendwas konkretes probiert?
Du musst ja irgendwas machen wie:

Code:
while wort!=EOF:
   lies nächstes wort
   inkrementiere zähler

gib zähler aus
 
Zuletzt bearbeitet:

Windows10

Bekanntes Mitglied
ReadIn() ist wohl irgendeine Funktion aus einer Library von eurer Schule. Da kann ich nichts mit anfangen. Ich verstehe sowieso nicht wieso irgendwelche Schulen etc da ihre eigenen Libraries für Ein&Ausgaben benutzen.

Hast du schonmal irgendwas konkretes probiert?
Du musst ja irgendwas machen wie:

Code:
while wort!=EOF:
   lies nächstes wort
   inkrementiere zähler

gib zähler aus
Nein, sicher weßt du was ReadIn() heißt!!
 

InfectedBytes

Top Contributor
nein, ReadIn() ist keine Funktion aus der Standard Java Installation.
Das ist irgendeine Methode, welche deine Schule in einer Klasse selbst definiert hat.

Wir wissen daher nicht, ob ReadIn eine Zeile als String einliest, die ganze Datei, etc.
 
K

kneitzel

Gast
Ein Grund für eine eigene Library könnte sowas wie automatische Tests sein. Wobei dies bei den Miniprogrammen auch unwahrscheinlich ist zumal es bei Anfängern aus meiner Sicht u jeden Befehl gehen sollte und nicht nur um richtig/falsch...

Und hier sehe ich auch die Möglichkeit, dass die Aufgabe falsch verstanden wurde und es nicht um ReadIn geht sondern evtl. um ein readLine was nur fälschlich als readln wie bei println geschrieben wurde. Mit der Erfahrung aus dem Forum würde ich fast darauf tippen.
 

JStein52

Top Contributor
Woher auch immer die stammt, du kannst zeilenweise einlesen (macht ja evtl. dein ReadIn), dann splittest du die gelesene Zeile an den gewünschten Stellen (Leerzeichen ?? evtl. andere) und zählst wieviele Elemente du in dieser Zeile hast.
z.B. so:

Code:
        String currentLine = readIn();
        String[] pieces = currentLine.split("\\s+");
        int        anzahlPieces = pieces.length;

        // jetzt hast du in pieces die einzelnen Bestandteile deiner Zeile
        // und in anzahlPieces deren anzahl und
        // kannst irgendwas mit machen.

Wobei ich allerdings die Syntax von ReadIn() nicht kenne und das einfach mal so hingeschrieben habe
 
Zuletzt bearbeitet:
K

kneitzel

Gast
Wenn pro Zeile ein Wert steht, dann muss man evtl. die Datei mehrfach einlesen:
Code:
// Erst die Anzahl der Werte ermitteln.
int counter = 0;
in.open(filename);
while (in.readIn()) {
  counter++;
}
in.close();
// Nun die Werte lesen
ValueType values[] = new ValueType[counter];
in.open(filename);
for (int index=0; index < counter; index++) {
  // Read the line with the value and set values[index]
}
in.close();

So in der Art.
 

Neue Themen


Oben