sql >> Database teknologi >  >> RDS >> Sqlserver

C# Script Brug af StreamWriter Skaber ekstra karakter?

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 bytes
  • FileStream er en Stream der læser og skriver til en fil
  • BinaryWriter giver dig mulighed for at skrive primitive typer i binær form til en Stream
  • TextWriter er en abstrakt basisklasse, der giver dig mulighed for at skrive tekst
  • StreamWriter er en TextWriter der giver dig mulighed for at skrive tekst til en Stream

Du skal sandsynligvis bruge FileStream eller BinaryWriter oven på en FileStream for at løse dit problem.



  1. Hierarkiske data i MySql

  2. Returner slutningen af ​​måneden i SQLite

  3. sp_executesql er langsom med parametre

  4. json_encode og highcharts