system.io.streamwriter en acentos de .net compact framework

Bueno, estoy usando todos estos códigos:

// StreamWriter file = new StreamWriter(AppSettings.Instance.Dpath + "\\notaventa.txt");

// StreamWriter file = new StreamWriter(AppSettings.Instance.Dpath + "\\notaventa.txt", false, System.Text.Encoding.GetEncoding(1252));
' Dim objEscritor = New StreamWriter("C:\temp\salida_encoding.txt", True, System.Text.Encoding.Default)
// StreamWriter file = new StreamWriter(AppSettings.Instance.Dpath + "\\notaventa.txt", true, System.Text.Encoding.ASCII);

pero ninguno funciona para imprimir

cancion

todos imprimen

canci?n

¿Cómo puedo arreglarlo? estoy usando

marco compacto 3.5

para dispositivos de mano

preguntado el 22 de mayo de 12 a las 19:05

2 Respuestas

Puedes arreglarlo por no especificando Encoding.ASCII. UTF-8 suele ser una buena apuesta, aunque por supuesto depende de lo que vaya a suceder. leer el archivo. Básicamente ASCII no tiene cualquier caracteres acentuados; se detiene en U+007E.

Yo esperaba Encoding.GetEncoding(1252) aunque para trabajar como Windows 1252 contiene el carácter "ó". Lo mismo ocurre con el valor predeterminado cuando no especifica una codificación, ya que usaría UTF-8. ¿Está seguro de que su cadena contiene los datos correctos para empezar? ¿Qué estás usando para leer el archivo tambien?

contestado el 22 de mayo de 12 a las 19:05

ASCII no incluye soporte para el ó personaje. A menos que tenga una razón convincente de lo contrario, siempre debe usar Unicode:

System.IO.StreamWriter file = new System.IO.StreamWriter(
    Path.Combine(AppSettings.Instance.Dpath, "notaventa.txt"), true, 
    System.Text.Encoding.UTF8);

No relacionado con su pregunta: debe usar Path.Combine (en lugar de una concatenación de cadenas explícita) para construir rutas de archivos. Le ahorraría el dolor de cabeza de determinar si incluir el encabezado/rezago \ o no.

contestado el 22 de mayo de 12 a las 19:05

System.Text.Ecoding.UTF8 no funcionó, recuerde que estoy demandando el marco compacto 3.5 - ángel uc

UTF8 is compatible con .NET Compact Framework; cheque Propiedades de codificación. - Douglas

ok, lo comprobaré de nuevo, es cierto, tal vez por eso no funcionó muy bien - ángel uc

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.