En StreamWriter
er til at skrive tekst til et vandløb. Den bruger altid en kodning, og hvis du ikke angiver en, når du opretter den, vil den bruge UTF-8 (uden et byteordremærke - BOM). Det output, du får, er UTF-8-koderen, der forsøger at oversætte teksten (i form af individuelle tegn) til UTF-8.
Hvis du vil skrive bytes til en stream skal du blot skrive til streamen direkte ved hjælp af Write
metode, der accepterer et array af bytes. Hvis du vil skrive til en fil, kan du oprette en FileStream
og brug det som stream.
Navngivningen af klasser i System.IO
navneområde kan til tider være forvirrende:
Stream
er en abstrakt basisklasse, der giver metoder til at læse og skrive bytesFileStream
er enStream
der læser og skriver til en filBinaryWriter
giver dig mulighed for at skrive primitive typer i binær form til enStream
TextWriter
er en abstrakt basisklasse, der giver dig mulighed for at skrive tekstStreamWriter
er enTextWriter
der giver dig mulighed for at skrive tekst til enStream
Du skal sandsynligvis bruge FileStream
eller BinaryWriter
oven på en FileStream
for at løse dit problem.