2010-06-11 23 views
6

Wie soll ich den folgenden Vb.Net-Code ändern, um str in die Datei in Unicode zu schreiben?Wie schreibe ich in eine Datei in Unicode in Vb.Net

Muss ich vor dem Schreiben in die Datei str in Unicode konvertieren?

Using sw As StreamWriter = New StreamWriter(fname) 
    sw.Write(str) 
    sw.Close() 
End Using 

Antwort

8

Verwenden overriden constructor angeben die Kodierung

Using sw As StreamWriter = New StreamWriter(fname, true, System.Text.Encoding.Unicode) 
    sw.Write(str) 
    sw.Close() 
End Using 

Wählen entweder UTF8 (8bit) oder Unicode (16 Bit) Zeichensatzcodierung gemäß Ansprüchen.

2

Die Dokumentation besagt, dass StreamWriter UTF8-Codierung standardmäßig verwendet.

+2

+1 Obwohl es UTF8 ohne BOM ist, so könnten Sie nicht realisieren !. http://msdn.microsoft.com/en-us/library/fysy0a4b.aspx – MarkJ

0

Der folgende Code weist explizit an, als UTF-8 ohne BOM zu speichern.

Dim utf8WithoutBom As New System.Text.UTF8Encoding(False) 
Dim orfWriter As System.IO.StreamWriter = New System.IO.StreamWriter(fileName, append, utf8WithoutBom) 
orfWriter.Write(saveString) 
orfWriter.Close() 

Die vollständige Dokumentation finden Sie unter www.ezVB.net.

+1

Beide Ihre aktuellen Antworten Link auf die gleiche Website. Wenn Sie mit dieser Website verbunden sind, sollten Sie dies in Ihrer Antwort angeben. –

+0

Danke, dass Sie mich darüber informiert haben. Ja, ich bin mit ezVB.net verbunden. – user3032129

Verwandte Themen