如何修改以下Vb.Net代码以将str
写入unicode文件?
在写入文件之前,是否需要将str
转换为 Unicode ?
Using sw As StreamWriter = New StreamWriter(fname)
sw.Write(str)
sw.Close()
End Using
答案 0 :(得分:8)
使用overriden constructor指定编码
Using sw As StreamWriter = New StreamWriter(fname, true, System.Text.Encoding.Unicode)
sw.Write(str)
sw.Close()
End Using
根据您的要求选择UTF8(8位)或Unicode(16位)字符集编码。
答案 1 :(得分:2)
文档说明StreamWriter
默认使用UTF8编码。
答案 2 :(得分: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。