Daten aus Datei auslesen

Status
Nicht offen für weitere Antworten.

Info_Guy

Mitglied
Hallo,

ich möchte gerne einen beliebigen Text in eine beliebige Datei speichern.

Dazu habe ich mir bisher folgenden Code zusammengebastelt.

Code:
import java.io.*;
public class Dateioperator
{
	
	public Dateioperator()
	{
	}

	public void schreibe_in_Datei(String Dateiname, String Text)
	{ File Datei;
	  FileWriter Schreiber;
	  
	  try
	  {  Datei = new File(Dateiname);
	     Schreiber = new FileWriter(Datei);
	       for(int i=0;i<Text.length();i++)
	        { Schreiber.write(Text.charAt(i));
	          Schreiber.close();
	        }
	       }
	           catch(IOException e)
	      
	        { 
	            System.out.println("Ein Fehler ist aufgetreten!");
	        }
	  }
//**---------------------------------------------------------------------------------

     public char [] lies_Datei_aus(String Dateiname)
      { File Datei;
        FileReader Leser;
        Datei= new File(Dateiname);
        
        try
        { 
          Leser = new FileReader(Datei);
          int Dateilaenge= (int)Datei.length();
          char [] Daten= new char [Dateilaenge];
          Leser.read(Daten,0,Dateilaenge);
          Leser.close();
          return Daten;
        }
         catch(IOException e)
	      
	        { 
	            System.out.println("Ein Fehler ist aufgetreten!");
	            return null;
	        }
	        

	   }
	  
	  
    
}

Er gibt mir aber beim Erstellen einer Datei immer an das ein Fehler aufgetreten ist, und was mache ich beim Auslesen falsch?


Ebenso habe ich die Aufgabe bekommen, Zahlen aus einer Datei zu lesen.

Beispiel: In der Datei Zahlen.txt ist folgendes gespeichert:

1676
-2133
2187
2132
-3232


wie kann ich diese Zahlen auslesen und wie mache ich das mit den Umbrüchen?

Vielen Dank für eure Hilfe[/code]
 
B

Beni

Gast
Lass dir nicht so einen schwammigen Ausdruck ausgeben:
Code:
System.out.println("Ein Fehler ist aufgetreten!");
Benutz die Methoden die Exception dir anbietet: "getMessage()" und "getStackTrace()".
Dann wird es schon viel offensichtlicher, wieso das "Schreiber.close()" an eine andere Stelle sollte.

Zum lesen: der "java.util.Scanner" bietet viele Methoden aus Text was zu lesen, auch "nextInt", "hasInt", ... aber da guckst du am besten mal in die API (Java 1.5 natürlich :D )
 

Info_Guy

Mitglied
Hi, danke für deine Antwort, wir haben das gerade im Unterricht durchgenommen, daher kann ich so individuell nicht voranschreiten - Schuljava halt :)

wie setzte ich das getMessage() denn ein?

Das hier ist ja auch das Anfänger Forum :)
 

SebiB90

Top Contributor
getMessage() musst du auf deine exception variable anwenden also auf e im catch block
der fehler den du beim schreiben machst du schließt den filewriter in der for schleife aber da schreibste ja noch was rein also close() erst nach der for schleife und nicht in der schleife.
 

Info_Guy

Mitglied
Hi, Super.

Habe jetzt alles soweit am laufen, nur wie mache ich das mit der Zahlenaufgabe? bzw. wie schaffe ich es, dass die Umbrüche mitgelesen werden? - Wäre nett, wenn Ihr mir ein kleines Beispiel geben könntet
 

Leroy42

Top Contributor
Info_Guy hat gesagt.:
bzw. wie schaffe ich es, dass die Umbrüche mitgelesen werden?
:shock:
Wenn es Zeilenumbrüche in der Datei gibt, werden die doch mitgelesen. Du erkennst
sie an ihren Ascii-Codes 13=CarriageReturn, 10=LineFeed.

Mußt du die Zeilen denn byteweise schreiben? Vorgabe?

Ansonsten benutz doch BufferedRead und BufferedWriter, dann kannst du zeilenweise
ein- und ausgeben.
 

Info_Guy

Mitglied
Hallo, ich kann ja mal gerade die Aufgabenstellung posten:

[...]Die einzelnen Zahlen sollen also durch einen Zeilenumbruch voneinander getrennt sein.

Es wäre praktisch, wenn wir eine Methode schreiben könnten, die den Dateinamen als Zeichenkette (String) erwartet und ein Array von "int-Zahlen" zurückgibt, das die Zahlen aus der Datei beinhaltet. Die Arraylänge soll dabei der Anzahl der Zahlen aus der Datei entsprechen. Implementieren Sie eine derartige Methode


Joa - also zu dem BufferedWriter - den haben wir noch nicht durchgenommen, vielleicht können wir dennoch zum Ziel kommen?
 

Info_Guy

Mitglied
Muss das dann so lauten?

Code:
public char [] lies_Zahlen_aus(String Dateiname)
	   { File Datei;
	     BufferedReader Leser;
	     Datei = new File(Dateiname);
	     
	     try
	     { Leser = new BufferedReader(Datei);
	       int Zahllaenge = (int)Datei.lenght();
	       char [] Daten = new char [Zahllaenge];
	       Leser.read(Daten,0,Zahllaenge);
	       Leser.close();
	       for(int i=1;i<Dateilaenge;i++)
	        { System.out.print(Daten[i]);}
	        return Daten;
	      }
         catch(IOException e)
	      
	        { 
	            System.out.println("Ein Fehler ist aufgetreten!");
	            return null;
	        }
    
    }

er kennt den Bufferreader aber nicht.[/code]
 

SebiB90

Top Contributor
der bufferedreader hat eine methode readLine() und diese ist hier vorteilhaft
damit kannste du die datei zeilenweise auslesen.
readLine() liefert immer nur eine zeile als String zurück und mit Integer.parseInt() kannst du dir die zahl da raus holen

edit:
außerdem musst du dem BufferedWriter den FileWriter im Konstruktor übergeben.
 

Info_Guy

Mitglied
Code:
public char [] lies_Zahlen_aus(String Dateiname)
	   { File Datei;
	     BufferedReader Leser;
	     Datei = new File(Dateiname);
	     
	     try
	     { Leser = new BufferedReader(Datei);    <- Diese Zeile findet als fehlerhalt, unten der Fehler

cannot find symbol - constructor BufferedReader(java.io.File)
 

SebiB90

Top Contributor
ups ich meinte dem BufferedReader musst du den FileReader übergeben
also:
Code:
new BufferedReader(new FileReader(Datei));
 

Info_Guy

Mitglied
Megageil! Funktioniert.

Aber wenn ich das mit UNiCOde machen soll, wie gehe ich dann vor? So war es in der AUfgabe gefordert (hatte ich nicht geschrieben - dass die zeilenumbrüche mit Unicode erkannt werden sollen)


Trotzdem schonmal vielen Dank - Echt Super von euch für die Hilfe
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Daten aus Import Datei auslesen und sortieren Java Basics - Anfänger-Themen 2
R csv-Datei auslesen und ausgelesene Daten in neue csv-Datei speichern Java Basics - Anfänger-Themen 2
J Input/Output Daten in Datei schreiben und auslesen Java Basics - Anfänger-Themen 23
E Text Datei Daten Auslesen und Schreiben Java Basics - Anfänger-Themen 3
P JSP - Daten aus externer Datei auslesen und anzeigen Java Basics - Anfänger-Themen 3
S StringTokenizer: Daten aus Datei auslesen Java Basics - Anfänger-Themen 11
M Daten aus .txt Datei einlesen und weiterverarbeiten Java Basics - Anfänger-Themen 80
H Daten aus einer Datei in eine Liste speichern Java Basics - Anfänger-Themen 23
S Daten aus eigenständiger .class-Datei abrufen Java Basics - Anfänger-Themen 1
U Daten aus Datei einlesen Java Basics - Anfänger-Themen 4
D Daten mit Apache POI in eine Excel Datei schreiben Java Basics - Anfänger-Themen 5
T JTable Daten aus txt datei Java Basics - Anfänger-Themen 3
C Datei mit Daten einlesen und höchsten wert der zweiten Spalte ermitteln Java Basics - Anfänger-Themen 1
S Daten aus anderen Dateien in neue Datei einlesen Java Basics - Anfänger-Themen 3
J Daten von einer PHP Datei ablesen Java Basics - Anfänger-Themen 1
T Input/Output Daten in txt-Datei schreiben - Fehlermeldung Java Basics - Anfänger-Themen 7
S Array Daten in Binär Datei schreiben/lesen Java Basics - Anfänger-Themen 11
M Daten in CSV Datei Speichern Java Basics - Anfänger-Themen 3
K Daten in eine Text datei schreiben !!!! Java Basics - Anfänger-Themen 6
A Programm mit Daten einer Datei testen Java Basics - Anfänger-Themen 4
T Speicherprobleme von daten in einer datei Java Basics - Anfänger-Themen 5
S Daten aus einer JTable in eine .doc-word- datei exportieren? Java Basics - Anfänger-Themen 7
A daten in datei suchen Java Basics - Anfänger-Themen 3
M Aus .txt Datei Daten in Array speichern Java Basics - Anfänger-Themen 3
D ausgabe von daten in txt/csv datei Java Basics - Anfänger-Themen 5
M Daten in Datei speichern Java Basics - Anfänger-Themen 8
T Daten in einer Datei überschreiben Java Basics - Anfänger-Themen 13
S Daten aus txt-datei einzeln nach Spalten einlesen Java Basics - Anfänger-Themen 16
S Daten zeilenweise aus Datei einlesen Java Basics - Anfänger-Themen 7
F Falsche Daten aus Datei Java Basics - Anfänger-Themen 2
R ObjectOutputStream -> Daten an Datei anhängen Java Basics - Anfänger-Themen 3
B Daten aus Datei lesen und in JTable anzeigen Java Basics - Anfänger-Themen 49
T Daten aus einer .csv Datei in einen Vector einlesen Java Basics - Anfänger-Themen 3
A Daten aus einer HashMap aus einer DB speichern und mit neuen Werten vergleichen Java Basics - Anfänger-Themen 8
Mady Daten von JList & Combobox in JTable adden Java Basics - Anfänger-Themen 2
M Daten aus errechneter Methode in Datenbank(SQLite) schreiben Java Basics - Anfänger-Themen 60
W Daten in Echtzeit übernehmen Java Basics - Anfänger-Themen 5
Z Java ArrayList speichert falsche Daten ab bzw. gibt falsche Daten aus? Java Basics - Anfänger-Themen 42
I H2 Datenbank starten / Daten in File speichern Java Basics - Anfänger-Themen 25
M Mehrere Daten/ Variablen Speichern Java Basics - Anfänger-Themen 9
E fehlermeldung bei richtigen login daten Java Basics - Anfänger-Themen 7
C Java Funktion: externe Daten vom Internet einbinden Java Basics - Anfänger-Themen 2
P Schiebefix - ArrayList überschreibt Daten Java Basics - Anfänger-Themen 3
S Daten/Klassen/Packages richtig updaten!? Java Basics - Anfänger-Themen 2
E Wie gebe ich alle Daten zwischen zwei Zeitpunkten aus? Java Basics - Anfänger-Themen 2
M Tabellen- Daten laden Java Basics - Anfänger-Themen 2
A Klasse um daten zu einlesen Java Basics - Anfänger-Themen 26
A Literale für primitive Daten Typen Java Basics - Anfänger-Themen 4
N Zwei Daten (Datum) miteinander vergleichen, abspeichern, laden Java Basics - Anfänger-Themen 4
A Daten auslesen/vergleichen Java Basics - Anfänger-Themen 3
D Sportwetten Daten Atomatisch analysieren um optimale Strategie zu erhalten Java Basics - Anfänger-Themen 6
S Java Daten in Excel speichern Java Basics - Anfänger-Themen 1
S Daten speichern, ohne Datenbank Java Basics - Anfänger-Themen 8
L Daten aus ArrayList in Datenbank durchsuchen Java Basics - Anfänger-Themen 5
Shallty Daten speichern und ändern? Java Basics - Anfänger-Themen 32
M Sqlite table löschen und daten einfügen Java Basics - Anfänger-Themen 5
S Binäre-Suche bei unsortierten Daten Java Basics - Anfänger-Themen 7
N Was passiert wenn wir Daten auf der Festplatte abspeichern wollen? bzgl. BufferStreams Java Basics - Anfänger-Themen 9
T Daten von Objekten speichern Java Basics - Anfänger-Themen 7
A Minesweeper - Daten Java Basics - Anfänger-Themen 46
A Eingelesene Daten in Array(Liste) abspeichern? Java Basics - Anfänger-Themen 18
S Daten aus zwei Verschiedenen Tabellen in eine ArrayListe Java Basics - Anfänger-Themen 4
WPS1000 Input/Output Wie aktiviere ich den Daten Transfer von der RS232 in meine Java Applikation Java Basics - Anfänger-Themen 2
R Eigenes Protokoll zur Übermittlung von Daten zum Webserver? Java Basics - Anfänger-Themen 4
A Reader wohin werden Daten gespeichert? Java Basics - Anfänger-Themen 7
M Erste Schritte CSV-File einlesen und Daten verarbeiten Java Basics - Anfänger-Themen 5
E Daten dem Super Aufruf übergeben Java Basics - Anfänger-Themen 3
M jTabel mit Daten Füllen Java Basics - Anfänger-Themen 5
M Wie erzeuge ich die Differenz von zwei Daten in Stunden?? Java Basics - Anfänger-Themen 2
S Daten lesen und speichern Java Basics - Anfänger-Themen 26
S JTable mit Daten füllen Java Basics - Anfänger-Themen 7
L Java Programm zum Auswerten von Daten Java Basics - Anfänger-Themen 11
H Passwortmanager, Sicherheit der Daten Java Basics - Anfänger-Themen 12
G Best Practice Wie große "Tabellen" effizient durchsuchen und Daten händeln? Java Basics - Anfänger-Themen 15
M Best Practice Daten-Import /Trabsfomration aus Textdatei Java Basics - Anfänger-Themen 12
R JTable Suchfunktion mit SQL Daten Java Basics - Anfänger-Themen 2
E Daten gehen nicht in Datenbank Java Basics - Anfänger-Themen 14
M Erste Schritte Speichern von mehreren Daten Java Basics - Anfänger-Themen 3
J Daten einer Textdatei in ein JTable importieren. Java Basics - Anfänger-Themen 3
F Daten von Thread an den aufrufenden zurückgeben Java Basics - Anfänger-Themen 22
C Endlosschleife bei füllen von Daten im JTable Java Basics - Anfänger-Themen 5
N Erste Schritte Dedicated Server \ Senden und Empfangen von Daten/Befehlen Java Basics - Anfänger-Themen 2
A Probleme beim zykl. aktulisieren von Daten in JTable Java Basics - Anfänger-Themen 3
D NPE beim laden von Daten aus MySQL Java Basics - Anfänger-Themen 9
P Einlesen von Daten via BufferedReader Java Basics - Anfänger-Themen 4
P Methoden ausgelesene (CSV-) Daten in Liste einer anderen Klasse einlesen Java Basics - Anfänger-Themen 0
F Daten aus Excel-Tabelle in Java importieren Java Basics - Anfänger-Themen 15
F Http Post von mehreren Daten Java Basics - Anfänger-Themen 5
F Daten auf Webserver laden - wiederholen bei Fehler Java Basics - Anfänger-Themen 0
W Best Practice problemabhängige Persistentmachung von Daten Java Basics - Anfänger-Themen 6
P Daten von Internetseite auslesen Java Basics - Anfänger-Themen 10
N Daten/Formular per POST an Firefox/Browser senden Java Basics - Anfänger-Themen 7
T printf Daten aus der Tabelle in Excel übernehmen Java Basics - Anfänger-Themen 5
P zweidimensionales Array anlegen und mit DB-Daten füllen Java Basics - Anfänger-Themen 14
V Einlesen von Daten Java Basics - Anfänger-Themen 8
J TableView zeigt keine Daten an Java Basics - Anfänger-Themen 14
J Daten im Programm speichern Java Basics - Anfänger-Themen 14
N Interface Daten einem Implementierten Interface zuweisen Java Basics - Anfänger-Themen 37
O Probleme mit CSV Daten Java Basics - Anfänger-Themen 10
M Arrays: Trennung von Daten und Darstellung Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben