Sono abbastanza nuovo per file, flussi e diverse codepage. Vedere questo è il mio problema:C#: Come scoprire se ho la codifica giusta
Ottengo file di testo e alcuni di essi sono stati creati con la codepage Windows-1252, alcuni sono ancora IBM850 e talvolta UTF8. Quando li importa, il mio database mostra tutti i tipi di simboli per ä, ö, ü, ß, perché li ho letti con la codepage sbagliata. solo quando li impongo con la codepage corretta, tutto funziona correttamente.
Questo è quello che ho pensato che sarebbe potuto un buon approccio:
Converti ä, ö, ü, ß di byte array con una tabella codici X
esempio:
byte[] myAeKl = Encoding.GetEncoding("IBM850").GetBytes("ä");
byte[] myAeGr = Encoding.GetEncoding("IBM850").GetBytes("Ä");
passare attraverso i file di testo e confrontare ogni matrice di byte di lettere con quelli sopra. se trovato usa quella tabella codici, altrimenti prova un'altra codepage.
Questo è quello che non capisco: Come posso confrontare i byte dalle lettere nel file di testo alle matrici di byte delle lettere che sto cercando. Ad esempio:
if (Textfile.Letter == myAeKl || Textfile.Letter == myAeGr)
...
C'è un altro modo per ottenere la tabella codici giusto? Ho il giusto approccio alla soluzione?
Ciao, Grazie per la tua risposta veloce. bene il problema è che i file possono essere grandi e l'importazione richiede una certa quantità di tempo e il problema più grande non lo faccio. Devo solo programmarlo :) Greetz – Phenix
"se incontro" era inteso a livello di programmazione. –