【问题标题】:How to write to a file in Unicode in Vb.Net如何在 Vb.Net 中以 Unicode 格式写入文件
【发布时间】:2011-03-02 14:09:56
【问题描述】:

我应该如何修改以下 Vb.Net 代码以将str 写入 unicode 文件?

在写入文件之前是否需要将str 转换为Unicode

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

【问题讨论】:

    标签: vb.net unicode streamwriter


    【解决方案1】:

    使用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 位)字符集编码。

    【讨论】:

      【解决方案2】:

      文档说StreamWriter 默认使用 UTF8 编码。

      【讨论】:

      【解决方案3】:

      以下代码明确指示保存为不带 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

      【讨论】:

      • 您当前的两个答案都链接到同一个站点。如果您隶属于该网站,则应在回答中说明。
      • 感谢您告知我这件事。是的,我隶属于 ezVB.net。
      猜你喜欢
      • 1970-01-01
      • 2013-05-28
      • 1970-01-01
      • 1970-01-01
      • 2017-06-01
      • 2011-07-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多