Как записать в файл в Unicode в Vb.Net

как я должен изменить следующее Vb.Net код для записи str к файлу в юникоде?

мне нужно преобразовать str to Unicode перед записью в файл?

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

3 ответов


использовать конструктор переопределен на

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.


ниже код явно указывает, чтобы сохранить как UTF-8 без BOM.

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.