Writer FileWriter BufferedWriter OutputStreamWriter

C

Cjls96

Gast
Was unterscheidet diese Klassen zum Schreiben in Dateien?

Writer ist eine abstrakte Klasse und dient somit nur als Oberklasse.
Was wird dann also mit dem Ausdruck
Java:
Writer writer = null;
ausgedrückt?

Und was bietet sich an um einfach einen kurzen String in eine Datei zu schreiben?
 
Writer writer = null -> Nicht initialisiertes Null Objekt.

Der FileWriter, wie der Name schon sagt...
Wie das geht, findest Du z.B. bei StackOverflow...
 
  • Gefällt mir
Reaktionen: psYcho-edgE und MonsieurCock
Cjls96 schrieb:
Writer writer = null;
Nun...das bedeutet wohl, das writer dir nachher alle Methode/Funktionen zur Verfügung stellt, die in der Klasse Writer definiert sind. Javadoc ist dein Freund hier. Zugriff auf mögliche zusätzliche Methoden/Attribute von konkreten Subklassen, naja weißt du ja sicher selbst wie das dann geht.

Cjls96 schrieb:
Und was bietet sich an um einfach einen kurzen String in eine Datei zu schreiben?
Manchmal frage ich mich wozu es so etwas wie StackOverflow gibt oder ob es wirklich nicht jeder kennt, der schon mal ein Problem im Bereich Programmierung hatte. Deine Frage z.B. hat sage und schreibe 22 Antworten, teils redundant, teils nicht elegant, aber irgendwas davon sollte für dich funktionieren.

Zudem kann man als Einstieg auch immer die offiziellen Tutorials nutzen.
 
  • Gefällt mir
Reaktionen: psYcho-edgE
Cjls96 schrieb:
Was wird dann also mit dem Ausdruck
Java:
Writer writer = null;
ausgedrückt?

Allgemein gesprochen, wird hier eine Variable definiert. Früher hat man speziell bei I/O die Variable nicht gleich initialisiert, weil man im finally Block darauf zugreifen wollte.

Java:
Writer out = null;
try
{
    out = new BufferedWriter(...);
}
catch (IOException ex)
{
    ...
}
finally
{
    close(out);
}


Heute verwendet man ein anderes Idiom, was einem das Resource-Handling erspart.

Java:
try (Writer out = Files.newBufferedWriter(...))
{
}
catch (IOException ex)
{
    ...
}
 
Statt einfach mal zu lesen machst du noch einen Thread auf?

1. Das erste Ergebnis auf google zu "null in java", als Vorschau direkt oben angezeigt:
In Java programming, null can be assigned to any variable of a reference type (that is, a non-primitive type) to indicate that the variable does not refer to any object or array.

2. Einen link zu Files.write() hatte ich dir schon im anderen Thread gepostet, und BufferedWriter hattest du dort doch auch schon selbst als Beispiel.

Dir fehlen offensichtlich nicht nur die absoluten Grundlagen was Programmieren bzw. Java angeht, nein, dir fehlt DIE Grundlage überhaupt: Die Fähigkeit zu lesen. Ist nicht böse gemeint, aber daran solltest du echt arbeiten.
 
  • Gefällt mir
Reaktionen: psYcho-edgE
Zurück
Oben