如何修改以下Vb.Net代碼以將str
寫入Unicode文件中?如何在Vb.Net中使用Unicode編寫文件
在寫入文件之前,是否需要將str
轉換爲Unicode?
Using sw As StreamWriter = New StreamWriter(fname)
sw.Write(str)
sw.Close()
End Using
如何修改以下Vb.Net代碼以將str
寫入Unicode文件中?如何在Vb.Net中使用Unicode編寫文件
在寫入文件之前,是否需要將str
轉換爲Unicode?
Using sw As StreamWriter = New StreamWriter(fname)
sw.Write(str)
sw.Close()
End Using
使用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位)字符集編碼按您的要求。
文檔說明StreamWriter
默認使用UTF8編碼。
下面的代碼明確指示保存爲不含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-28 14:47:51
感謝您通知我這件事。是的,我隸屬於ezVB.net。 – user3032129 2013-11-28 15:00:59
+1雖然它是沒有BOM的UTF8,所以你可能沒有意識到! http://msdn.microsoft.com/en-us/library/fysy0a4b.aspx – MarkJ 2010-06-12 18:02:30