Título: Ñ y acentos en C#? Publicado por: sexto en 27 Enero 2011, 17:17 pm Estoy haciendo una especie de Notepad en C#. Un ejercicio que nos ha mandado el profesor para este fin de semana.
He hecho el diálogo para abrir un archivo (.txt) y me lo abre bien, pero no me saca ni la letra ñ ni los acentos. El código que tengo para abrir el archivo es el siguiente: Código: FileStream Archivo = new FileStream(AbrirArchivo.FileName, FileMode.Open, FileAccess.Read); Me imagino que el problema está en el UTF8, pero he probado con ASCII y con un par mas y no hay forma de que los saque. ¿Como lo puedo conseguir? Muchas gracias Título: Re: Ñ y acentos en C#? Publicado por: .mokk. en 27 Enero 2011, 17:42 pm http://msdn.microsoft.com/es-es/library/x8xxf0x5%28VS.80%29.aspx
Nose si esto te sirva, pero por lo menos a mi si System.Text.Enconding.Default Título: Re: Ñ y acentos en C#? Publicado por: chubichequer en 27 Enero 2011, 18:07 pm Sexto en efecto ese utf8 no acepta los acentos ni las ñ en ese caso al menos, si usas default estaras usando un tipo de coficicacion que no esta en la lista y es la windows 1251, esa es la codificacion estandar de windows, es muy similar al ascii 256 pero con algunas diferencias, asi que puedes usar default en vez de utf8 o bien puedes usar esa codificacion de esta manera.
Código: Encoding encode = System.Text.Encoding.GetEncoding("1251"); Título: Re: Ñ y acentos en C#? Publicado por: sexto en 27 Enero 2011, 18:26 pm He probado las dos formas pero nada...
Lo estoy poniendo bien? Citar FileStream Archivo = new FileStream(AbrirArchivo.FileName, FileMode.Open, FileAccess.Read); Encoding encode = System.Text.Encoding.GetEncoding("1251"); byte[] Contenido; Contenido = new byte[Archivo.Length]; Archivo.Read(Contenido, 0, (int)Archivo.Length); textBox1.Text = new encode("1251").GetString(Contenido); Acabamos de empezar con Visual C# y aun no lo tengo yo muy dominado el tema... Título: Re: Ñ y acentos en C#? Publicado por: [D4N93R] en 27 Enero 2011, 20:58 pm No me le los codes de los encodings pero puedes usar "utf-8" por ejemplo. Pruebalo.
Título: Re: Ñ y acentos en C#? Publicado por: Garfield07 en 27 Enero 2011, 21:38 pm Podrias probar algo como (en C)
Código
O algo asi. Hace tiempo que no uso fgetc asi que no se si los arg. están bien, pero mas o menos estaría correcta la idea... Suerte! Modf: Para los acentos es exactamente lo mismo Remodf por si eso...: La cosa es que leas un byte y si es una Ñ o demás, lo imprimas con su valor ASCII... Así me va a mi en C. Título: Re: Ñ y acentos en C#? Publicado por: sexto en 28 Enero 2011, 17:57 pm Con UTF8 ya probé y nada.
Lo que comentas de sustituir los carácteres por su código ASCII... no se me había ocurrido. Ahora probaré. Título: Re: Ñ y acentos en C#? Publicado por: seba123neo en 29 Enero 2011, 02:31 am Hola, creo que con poner System.Text.Encoding.Default se soluciona.
aca te paso un ejemplo que no funciona y me muestra los acentos mal y las "ñ" como caracteres no validos. No Funciona: Código
aca el que funciona: Código
en C#: Código
saludos. Título: Re: Ñ y acentos en C#? Publicado por: callemanuel en 15 Abril 2012, 06:06 am Hola me imagino que la respuesta es un poco tarde para tu tarea pero se que al igual que yo muchas personas leen esto todavia "ya que aparece en google" y les puede servir como respuesta a otras personas
RESPUESTA: CUANDO GUARDEN EL .TXT DEL QUE VAN A LEER EN LA PARTE DE ABAJO DICE CODIFICACIÓN, EN ESTE PUNTO ELIGAN UTF-8 QUE ES LA QUE RECONOCE C# Y PROBLEMA SOLUCIONADO CON TÍLDES Y TOD |