Soy bastante nuevo en archivos, transmisiones y páginas de códigos diferentes. Vea este es mi problema:C#: cómo: para saber si tengo la codificación correcta
Obtengo archivos de texto y algunos de ellos han sido creados con la página de códigos Windows-1252, algunos aún son IBM850 y otras son UTF8. Cuando los importo, mi base de datos muestra todo tipo de símbolos para ä, ö, ü, ß, porque los leí con la página de códigos incorrecta. solo cuando los importo con la página de códigos correcta, todo funciona bien.
Esto es lo que pensé que sería posible que un buen enfoque:
Convertir ä, ö, ü, ß a bytes matriz con una página de códigos X
por ejemplo:
byte[] myAeKl = Encoding.GetEncoding("IBM850").GetBytes("ä");
byte[] myAeGr = Encoding.GetEncoding("IBM850").GetBytes("Ä");
pasan por los archivos de texto y comparar cada conjunto de bytes de letras con los de arriba. si encuentra esta página de códigos, de lo contrario pruebe con otra página de códigos.
Esto es lo que no entiendo: ¿Cómo puedo comparar los bytes de las letras en el archivo de texto a las matrices de bytes de las letras que estoy buscando. Ej:
if (Textfile.Letter == myAeKl || Textfile.Letter == myAeGr)
...
¿Hay alguna otra manera de conseguir la página de código correcto? ¿Tengo el enfoque adecuado para la solución?
Hola, Gracias por su rápida respuesta. Bueno, el problema es que los archivos pueden ser grandes y la importación lleva cierto tiempo y el mayor problema es que no realizo la importación. Acabo de programarlo :) Greetz – Phenix
"si me encuentro" se entiende por programación. –