У меня есть файл dbf, закодированный как кодовая страница 866 (DOS)
Используя приведенный ниже код, я пытаюсь его прочитать. Проблема в том, что строки, которые я получаю, формируются так, как если бы файл был в кодовой странице 1252. Я пока безуспешно проверял другие вопросы на SO и других форумах. Ищу идеи на горячем, чтобы прочитать его правильно.
var ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\PathtoFile\;Extended Properties=""dBase 5.0""";
var dBaseConnection = new System.Data.OleDb.OleDbConnection(ConnectionString );
dBaseConnection.Open();
var dBaseCommand = new System.Data.OleDb.OleDbCommand("SELECT * FROM FileName",dBaseConnection);
var dBaseDataReader = dBaseCommand.ExecuteReader(CommandBehavior.SequentialAccess);
while( dBaseDataReader.Read()){
Encoding.GetEncoding(866).GetString(Encoding.GetEncoding(1252).GetBytes(dBaseDataReader.GetString(2)).Dump(); // Does not help
}