BufferedStream.Close Metod

Definition

Stänger strömmen och släpper alla resurser (särskilt systemresurser som socketar och filhandtag) som är associerade med den aktuella buffrade strömmen.

public:
 override void Close();
public override void Close();
override this.Close : unit -> unit
Public Overrides Sub Close ()

Undantag

Ett fel uppstod när strömmen skulle stängas.

Kommentarer

Data som tidigare skrivits till bufferten kopieras till den underliggande datakällan eller lagringsplatsen innan den buffrade strömmen stängs. Därför är det inte nödvändigt att anropa Flush() innan du anropar Stäng. Efter ett anrop till Stäng kan alla åtgärder på den buffrade dataströmmen generera undantag.

Om strömmen töms töms inte dess underliggande kodare om du inte uttryckligen anropar Flush() eller stänger. Inställningen AutoFlush till true innebär att data rensas från bufferten till dataströmmen, men kodartillståndet rensas inte. Detta gör att kodaren kan behålla sitt tillstånd (partiella tecken) så att nästa teckenblock kan kodas korrekt. Det här scenariot påverkar UTF8 och UTF7 där vissa tecken bara kan kodas efter att kodaren har fått det intilliggande tecknet eller tecknen.

Försök att manipulera en ström när den har stängts kan utlösa en ObjectDisposedException.

Gäller för

Se även