Cześć wszystkim, od wczoraj borykam się z jednym problemem, mianowicie: Mam plik w formacie DBF z kodowaniem Mazovia, plik muszę przekonwertować na inny format
ale przed tym muszę zmienić kodowanie tak aby tekst nie zawierał krzaków i innych dziwnych znaków. Do zmienienia kodowania użyłem klasy MazoviaEncoding którą zamieścił jeden z użytkowników stackoverflow. Na pierwszy rzut oka wszystkie znaki zostają dobrze podmienione oprócz "Ł" oraz "Ś" te znaki występują pod postacią "Ó". Czy ktoś z was miał podobny przypadek? Czym to może być spowodowane ?
Tutaj temat ze stacka: https://stackoverflow.com/questions/13655614/unicode-to-mazovia-encoding-redundant-char
Do pobrania danych z Dbf'a używam : https://github.com/eXavera/NDbfReader
Tak pobieram dane i konwertuje, po czym zapisuje plik:
Encoding encoding = new MazoviaEncoding();
using (DbfTable table = DbfTable.Open(path,encoding))
{
FetchDataFromDbf(ref DbfListName, table, 33);
}
File.WriteAllLines("Test.txt", DbfListName,encoding);
Metoda "FetchDataFromDbf":
public static void FetchDataFromDbf(ref List<string> StringList, DbfTable table, int columnIndex)
{
foreach (DbfRow row in table)
{
StringList.Add(row.GetString(table.columns[columnIndex]));
}
}