CP866 в ANSI

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

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

Сообщение Padre_Mortius » 12.11.2007 17:00:35

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

Сообщение Джентельмен » 12.11.2007 17:23:17

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

Сообщение Джентельмен » 12.11.2007 17:34:28

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

Сообщение Padre_Mortius » 12.11.2007 17:35:32

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

Сообщение Джентельмен » 12.11.2007 17:49:20

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

Сообщение Padre_Mortius » 12.11.2007 18:05:20

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

Сообщение Джентельмен » 12.11.2007 18:10:59

Total Commander - по F3 открываю... вижу иероглифы... жму "S" вижу русские слова, которые можно прочитать... тоесть кодировка ASCII (DOS)... что дальше? как получить доступ к таблице (DB)?
Джентельмен
постоялец
 
Сообщения: 162
Зарегистрирован: 16.10.2005 10:47:26
Откуда: Украина Донбасс Краматорск

Сообщение Padre_Mortius » 12.11.2007 18:21:51

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

Сообщение Padre_Mortius » 12.11.2007 18:26:55

Для работы с DB файлами можно использовать компонент tpdx
http://sourceforge.net/projects/tpdx/
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Джентельмен » 12.11.2007 18:42:41

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

Сообщение Padre_Mortius » 12.11.2007 19:09:38

Открываем исходник данного компонента (paradox.pas) и смотрим....
в свойстве TableName указывается путь к файлу с БД
Как получить данные из базы можно посмотреть там же. Все коменты на русском языке
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Vadim » 12.11.2007 20:46:04

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

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

Сообщение Vadim » 12.11.2007 20:49:11

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

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

Сообщение Vadim » 12.11.2007 20:58:36

Джентельмен
А похоже Ваш разработчик базы просто забыл при создании таблиц указать кодировку.
Если у Вас есть DataBase Desktop от Delphi, откройте в нём все таблицы по очереди, жмите кнопку "Restructure", выбираете справа в выпадающем меню "Table Language", жмёте кнопку "Modify" и выбираете "cp866".
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Джентельмен » 13.11.2007 11:05:53

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


5 БАЛОВ!!!! все именно так...
гре... ладно... не буду незлаым тихим словом вспоминать разработчика...
Джентельмен
постоялец
 
Сообщения: 162
Зарегистрирован: 16.10.2005 10:47:26
Откуда: Украина Донбасс Краматорск

Пред.След.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 54

Рейтинг@Mail.ru