2010-06-11 17 views
6

Cómo debería modificar el siguiente código Vb.Net escribir str al archivo en Unicode?cómo escribir en un archivo en Unicode en Vb.Net

¿Debo convertir str en Unicode antes de escribir en el archivo?

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

Respuesta

8

Uso del overriden constructor para especificar la codificación

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

Escoja ya sea UTF-8 (de 8 bits) o Unicode (16 bits) conjunto de caracteres según sus necesidades.

2

Documentación dice que StreamWriter utiliza UTF-8-codificación por defecto.

+2

+1 Aunque es UTF8 sin lista de materiales, ¡entonces es posible que no se dé cuenta !. http://msdn.microsoft.com/en-us/library/fysy0a4b.aspx – MarkJ

0

El código siguiente instruye explícitamente a guardar como UTF-8 sin 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() 

Para obtener la documentación completa, consulte www.ezVB.net.

+1

Tanto sus respuestas actuales vinculan al mismo sitio. Si está afiliado a este sitio, debe indicarlo en su respuesta. –

+0

Gracias por informarme sobre esto. Sí, estoy afiliado a ezVB.net. – user3032129

Cuestiones relacionadas