En nuestra aplicación, recibimos archivos de texto ( .txt
,.csv
, etc.) a partir de diversas fuentes. Al leer, estos archivos a veces contienen basura porque los archivos se crearon en una página de códigos diferente / desconocida.
¿Hay alguna manera de detectar (automáticamente) la página de códigos de un archivo de texto?
El detectEncodingFromByteOrderMarks
, por el StreamReader
constructor, trabaja para UTF8
y otros archivos Unicode marcada, pero estoy buscando una manera de detectar las páginas de códigos, como ibm850
, windows1252
.
Gracias por sus respuestas, esto es lo que he hecho.
Los archivos que recibimos son de usuarios finales, no tienen idea de las páginas de códigos. Los receptores también son usuarios finales, por ahora esto es lo que saben sobre las páginas de códigos: las páginas de códigos existen y son molestas.
Solución:
- Abra el archivo recibido en el Bloc de notas, mire un texto confuso. Si alguien se llama François o algo así, con tu inteligencia humana puedes adivinar esto.
- He creado una pequeña aplicación que el usuario puede usar para abrir el archivo e ingresar un texto que el usuario sabe que aparecerá en el archivo cuando se use la página de códigos correcta.
- Recorra todas las páginas de códigos y muestre las que dan una solución con el texto proporcionado por el usuario.
- Si aparece más de una página de códigos, solicite al usuario que especifique más texto.