CP866 в ANSI

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

Недавно на форуме пролетала информация по компоненту для доступа к парадоксовым базам. Правда только для чтения. Для ковертации этого вполне хватит.
Джентельмен
постоялец
Сообщения: 162
Зарегистрирован: 16.10.2005 10:47:26
Откуда: Украина Донбасс Краматорск
Контактная информация:

Сообщение Джентельмен »

чем сконвертировать?
Джентельмен
постоялец
Сообщения: 162
Зарегистрирован: 16.10.2005 10:47:26
Откуда: Украина Донбасс Краматорск
Контактная информация:

Сообщение Джентельмен »

так... хорошо сконвертировал... теже самые иероглифы остались...
Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

написание программы по конвертации бд из одного типа в другой занимает всего пару минут. Если лень. то можно и Excel'ем воспользоваться
Джентельмен
постоялец
Сообщения: 162
Зарегистрирован: 16.10.2005 10:47:26
Откуда: Украина Донбасс Краматорск
Контактная информация:

Сообщение Джентельмен »

Ну ерунда это писат программу... надо сконвертировать... а как? верней сконвертировать... теже попугаи... иероглифы один в один что были...
Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

попробуй просто просмотреть саму базу данных в каком нить файловом обозревателе типа far или Total Commander и попробуй определиться с кодировкой
Джентельмен
постоялец
Сообщения: 162
Зарегистрирован: 16.10.2005 10:47:26
Откуда: Украина Донбасс Краматорск
Контактная информация:

Сообщение Джентельмен »

Total Commander - по F3 открываю... вижу иероглифы... жму "S" вижу русские слова, которые можно прочитать... тоесть кодировка ASCII (DOS)... что дальше? как получить доступ к таблице (DB)?
Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

При чтении строковых полей делайте их переконвертацию с помощью функции OEMtoChar
Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

Для работы с DB файлами можно использовать компонент tpdx
http://sourceforge.net/projects/tpdx/
Джентельмен
постоялец
Сообщения: 162
Зарегистрирован: 16.10.2005 10:47:26
Откуда: Украина Донбасс Краматорск
Контактная информация:

Сообщение Джентельмен »

и как им пользоватся?
Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

Открываем исходник данного компонента (paradox.pas) и смотрим....
в свойстве TableName указывается путь к файлу с БД
Как получить данные из базы можно посмотреть там же. Все коменты на русском языке
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

Джентельмен
в этом меня убедил сам разработчик базы... может вы поможите разобратса?

Разобраться можно с помощью FAR'а. Нажимаете на файле таблицы кнопку F3, потом в открывшемся просмоторщике кнопкой F8 выбираете кодировку. В какой кодировке русские слова читаются, значит та кодировка и есть.
Последний раз редактировалось Vadim 12.11.2007 19:50:00, всего редактировалось 1 раз.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

Джентельмен
и как им пользоватся?

Точно так-же как и TDBF.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

Джентельмен
А похоже Ваш разработчик базы просто забыл при создании таблиц указать кодировку.
Если у Вас есть DataBase Desktop от Delphi, откройте в нём все таблицы по очереди, жмите кнопку "Restructure", выбираете справа в выпадающем меню "Table Language", жмёте кнопку "Modify" и выбираете "cp866".
Джентельмен
постоялец
Сообщения: 162
Зарегистрирован: 16.10.2005 10:47:26
Откуда: Украина Донбасс Краматорск
Контактная информация:

Сообщение Джентельмен »

Vadim писал(а):Джентельмен
А похоже Ваш разработчик базы просто забыл при создании таблиц указать кодировку.
Если у Вас есть DataBase Desktop от Delphi, откройте в нём все таблицы по очереди, жмите кнопку "Restructure", выбираете справа в выпадающем меню "Table Language", жмёте кнопку "Modify" и выбираете "cp866".


5 БАЛОВ!!!! все именно так...
гре... ладно... не буду незлаым тихим словом вспоминать разработчика...
Ответить