Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.08.2010, 16:17   #1
Ks2010
Пользователь
 
Регистрация: 08.07.2010
Сообщений: 62
По умолчанию изменение кодовой страницы dbf-файла (foxPro)

я столько всего по этой теме узнала, перечитала всё что можно...
но ответа на свой вопрос не нашла. уже голова пухнет от кол-ва информации ... эх

суть: мне надо, чтоб пользователь мог изменить кодовую странину (например, просто нажатием на кнопку) открытого им dbf-файла. (на 1251, а лучше на 1252 и можно ещё на 866... )
открывается файл через ADOQuery.
Ks2010 вне форума Ответить с цитированием
Старый 10.08.2010, 17:26   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Насколько я знаю это стандартными компонентами сделать нельзя.
Я бы попробовал зарядить запрос провайдеру Visual Foxpro с указание смены кодовой страницы (таблица ессно должна быть открыта эксклюзивно). В Фокспро есть программа CPZero, которая банально меняет один байт в файле таблицы на другой с номером новой страницы.
Есть еще функция CPCONVERT, можно попробовать ее в запросе вызвать, поищи ее описание и примеры, может поможет.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.08.2010, 17:30   #3
Ks2010
Пользователь
 
Регистрация: 08.07.2010
Сообщений: 62
По умолчанию

про CPZero знаю, но как этим здесь воспользлваться не понимаю.

написала запрос с CPCONVERT (866,1251,...
результат: если у таблицы была ср866 то отображается +-||
cp 1251 - +-++
ср 1252 - ПРАВИЛЬНОЕ ОТОБРАЖЕНИЕ
ср 0 - +-+-
a без CPCONVERT если ср 866 - ПРАВИЛЬНОЕ ОТОБРАЖЕНИЕ
ср 1252 - закорючки всякие
ср 0 - ПРАВИЛЬНОЕ ОТОБРАЖЕНИЕ
ср 1251 - ПРАВИЛЬНОЕ ОТОБРАЖЕНИЕ

CPCONVERT в моем случае нельзя использовать.

мне надо, чтоб файл изменялся, а не просто его отображение было коректным.

Последний раз редактировалось Stilet; 11.08.2010 в 11:01.
Ks2010 вне форума Ответить с цитированием
Старый 11.08.2010, 10:55   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Пример файлика можно? (можно в архивчик и прямо к сообщению прикрепить)...
Или самостоятельно посмотрите внутри файла (через любой бинарный вьювер) - в какой кодировке реально русские буквы?
Может просто в заголовок прописать нужную кодовую таблицу и всё? (код на delphi, который напрямую пишет в заголовок DBF могу кинуть, он простой...)
Serge_Bliznykov вне форума Ответить с цитированием
Старый 11.08.2010, 11:21   #5
Ks2010
Пользователь
 
Регистрация: 08.07.2010
Сообщений: 62
По умолчанию

Вложение 28618 - вот такого типа таблица
когда открываю через dilphi буквы отображаются как-то так - ‹›„„
сама не посмотрю к.с. ..

код на delphi, который напрямую пишет в заголовок DBF оч нужен!!
Ks2010 вне форума Ответить с цитированием
Старый 11.08.2010, 11:29   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я чет там не увидел ни одного текста на русском...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.08.2010, 11:38   #7
Ks2010
Пользователь
 
Регистрация: 08.07.2010
Сообщений: 62
По умолчанию

в столбце vessel
Ks2010 вне форума Ответить с цитированием
Старый 11.08.2010, 13:10   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а мне вложение недоступно...
Цитата:
Вложение не существует или не указан идентификатор (номер). Если вы уверены, что использовали правильную ссылку, свяжитесь с администрацией
Виталий, может перевыложите?..
Serge_Bliznykov вне форума Ответить с цитированием
Старый 11.08.2010, 13:17   #9
Ks2010
Пользователь
 
Регистрация: 08.07.2010
Сообщений: 62
По умолчанию

ещё раз
[ATTACH] 28622 [/ATTACH]
Вложения
Тип файла: rar tabl.rar (14.6 Кб, 35 просмотров)
Ks2010 вне форума Ответить с цитированием
Старый 11.08.2010, 13:20   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
в столбце vessel
В том то и дело что там в оригинале уже стоят ‹›„„
так что CPZero не поможет, по-моему у тебя эта таблица изначально наполнена неверно...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
чужое MDE приложение при формировании отчёта(экспорта) создаёт DBF с проставленной кодовой страницей 0x26 Serge_Bliznykov Microsoft Office Access 5 17.01.2011 17:26
Динамическое изменение URL страницы в JavaScript без перезагрузки страницы ilusha JavaScript, Ajax 7 25.02.2009 09:59
Изменение пути к таблице .dbf Tanuska___:) БД в Delphi 16 22.04.2008 15:52
Проблема кодировки DBF из foxpro djinni БД в Delphi 6 29.01.2008 14:36
сохранение результата выборки из DBF файла в DBF файл с такой же структурой таблицы GazimagomedovM БД в Delphi 5 06.11.2007 17:58