Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hallo leute,
ich habe ein großes problem. ich soll eine klasse ArbeiteMitTextDatei erstellen. diese soll die klasse:
public boolean leseTextDatei(): Diese Methode liest solange einen Dateinamen
einer Textdatei vom Bildschirm ein (maximal jedoch 5-mal), bis diese Datei zum Lesen
von Daten ge¨offnet werden kann. Anschließend werden die Zeilen dieser Datei eingelesen
und die eingelesenen Zeilen werden in einem Container-Datenfeld gespeichert. Konnte
die Datei erfolgreich eingelesen werden, wird true ansonsten false zur¨uckgegeben.
beinhalten. leider hab ich keine ahnung wie das geht. kann mir vll einer helfen?
deine ansprechpartner für dieses problem ist jedes java.io und java.nio tutorial.
Hier mal ein kleiner ausflug dahin, ich benutze java.io .
Wir wollen also einen hadelsüblichen dateinamen vom Bildschirm einlesen... nun das ist einfach, wir biegen den system.in stream einfach um und können so den benutzer zur eingabe auffordern.
hier eine beispielmethode:
Java:
public final boolean LeseDateinamenEin(){
boolean istEingelesen = true;
System.out.println("Bitte geben sie einen Dateinamen ein!!");
BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
try{
this.fileName = buffer.readLine();
}catch (Exception e){
istEingelesen=false;
e.printStackTrace();
}
System.out.println("Sie haben folgenden Dateinamen eingegeben:"+" "+this.fileName);
return istEingelesen;
}
nun wollen wir die datei einlesen undzwar zeilenweise... die ergebnisse speichern wir in einer dynamischen Datenstrucktur, da wir nie wissen wieviele zeilen die datei hat.
Ich nehme hierfür eine LinkedLis, zu deutsch eine Verkettete Liste.
Beispielmethode:
Java:
public boolean LeseDateiEin(){
boolean istEingelesen = true;
try {
FileReader fin = new FileReader(this.fileName);
BufferedReader buffer= new BufferedReader( fin );
String zeile = buffer.readLine();
zeilen.add(zeile);
while(zeile != null){
zeile = buffer.readLine();
zeilen.add(zeile);
}
} catch (Exception e) {
istEingelesen=false;
e.printStackTrace();
}
return istEingelesen;
}
Insgesammt sehe die Klasse so aus:
Java:
package hausaufgabenhilfe;
import java.io.*;
import java.nio.*;
import java.nio.channels.FileChannel;
import java.util.*;
public class DateiEinlesen {
String fileName;
LinkedList<String> zeilen = new LinkedList<String>();
public final boolean LeseDateinamenEin(){
boolean istEingelesen = true;
System.out.println("Bitte geben sie einen Dateinamen ein!!");
BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
try{
this.fileName = buffer.readLine();
}catch (Exception e){
istEingelesen=false;
e.printStackTrace();
}
System.out.println("Sie haben folgenden Dateinamen eingegeben:"+" "+this.fileName);
return istEingelesen;
}
public boolean LeseDateiEin(){
boolean istEingelesen = true;
try {
FileReader fin = new FileReader(this.fileName);
BufferedReader buffer= new BufferedReader( fin );
String zeile = buffer.readLine();
zeilen.add(zeile);
while(zeile != null){
zeile = buffer.readLine();
zeilen.add(zeile);
}
} catch (Exception e) {
istEingelesen=false;
e.printStackTrace();
}
return istEingelesen;
}
}
naja mein problem ist, dass ich nicht weiß wie ich das machen soll. studiere eigendlich chemie und ich hab mich durch den kurs mitschleppen lassen und jetzt ist es zu spät alles nachzuholen;(
ich soll das mit bluej erstellen und muss es bis heute abend abgeben sonst muss ich den kurs nochmal machen.