6

次のVb.Netコードを変更してstr、Unicodeでファイルに書き込むにはどうすればよいですか?

ファイルに書き込む前にUnicodeに変換する必要がありstrますか?

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

3 に答える 3

9

オーバーライドされたコンストラクターを使用して、エンコーディングを指定します

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

要件に応じて、UTF8(8ビット)またはUnicode(16ビット)の文字セットエンコーディングを選択します。

于 2010-06-11T09:37:48.033 に答える
2

ドキュメントによるとStreamWriter、デフォルトではUTF8-Encodingを使用しています。

于 2010-06-11T09:37:50.187 に答える
1

以下のコードは、BOMなしでUTF-8として保存するように明示的に指示しています。

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()

完全なドキュメントについては、www.ezVB.netを参照してください。

于 2013-11-28T14:25:51.410 に答える