Laden...

BinaryWriter und FileStream - Close Reihenfolge

Erstellt von sputnik007 vor 16 Jahren Letzter Beitrag vor 16 Jahren 2.482 Views
S
sputnik007 Themenstarter:in
33 Beiträge seit 2007
vor 16 Jahren
BinaryWriter und FileStream - Close Reihenfolge

Hallo,
ich habe eine Frage zu der Close() - Reihenfolge für BinaryWriter und FileStream. Am besten erklär ich das am Code selber:

internal void Speichern(string Datei)
{
    using (FileStream fs = new FileStream(Datei, FileMode.Create, FileAccess.Write))
    {
        using (BinaryWriter bw = new BinaryWriter(fs))
        {
            bw.Close();
            fs.Close();
        }
    }
}

Hab ich das richtig umgesetzt, oder gibt es da was zu beachten?
(Z.Bs. ob man zuerst den BinaryWriter schließen muss oder ob die usings überflüssig sind.)

Danke fürs Durchlesen. 🙂

49.485 Beiträge seit 2005
vor 16 Jahren

Hallo sputnik007,

wenn du using benutzt, was gut ist, dann brauchst du kein Close.

herbivore

S
sputnik007 Themenstarter:in
33 Beiträge seit 2007
vor 16 Jahren

Aso. Gut, danke für die Antwort. 👍

N
335 Beiträge seit 2006
vor 16 Jahren

Hi!

Using zu benutzen ist sehr löblich und natürlich zu präferieren.
Der Vollständigkeit halber möchte ich aber hier noch die MSDN zitieren:

Closes the current BinaryWriter and the underlying stream. Quelle

Mfg NeuroCoder

49.485 Beiträge seit 2005
vor 16 Jahren

Hallo NeuroCoder,

ja, ein BinaryWriter.Close schließt nicht nur den BinaryWriter, sondern auch den BaseStream des BinaryWriters. Aber das heißt ja nur, dass das zweite Close, was implizit vom using FileStream ausgelöst wird, überflüssig ist. Da man dieses Close aber eh nicht verhindern kann und ein Close mehr nicht schadet, bleibt es doch bei der Aussage, dass man sich bei using nicht um das Close kümmern und schon gar kein explizites Close vornehmen muss.

herbivore