![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Dos-Win кодировки. [D6, dBase, FoxPro]
Sheva © (2002-02-21 12:17:00)Ув. мастера. помогите мне пожалуйста, уже три дня бьюсь над этой проблемой.
Я в своей програмке работаю с таблицами двух типов:
1. Старая фоксовская досовая таблица, условно, Table1;
2. Win-таблица под dbase4, Table2.
Возникает ситуация, когда я должен осуществлять поиск записи в Table1, по значению поля в Table2. Пишу такой код:
//st2 - string переменная, в Dos-кодировке.
Table2VKLNAME.AsString:= st2;
Table1.Open;
Table1.First;
for i:= 1 to Table1.RecordCount do
begin
st3:= Table1KOD.AsString;
if StrComp(Pchar(st2),Pchar(st3)) = 0 then
begin
Table1SROK.AsString:= Table2SROK.AsString;
Break;
end;
Table1.next;
end;
Table1.Close;
Так вот, все значения, которые в Table1 написаны латинскими буквами отрабатывает нормально, а русскими - не хочет перекодировать, или перекодирует неправильно. Перебробывал все, что мог. Помогите, пожалуйста, работа горит.
Sheva (2002-02-21 17:16:00) [1]Все перерыл. Но вот свершилось чудо. Наконец-то подобрал нужную кодировку, и все заработало. Два дня на такую фигню потратил.
volodya_ (2002-02-21 15:58:00) [2]В настройках BDE смотрел?
Sheva (2002-02-21 14:57:00) [3]Никто не знает? Или неправильно построил вопрос? Подскажите хоть что-то, горю.
Sheva (2002-02-21 12:22:00) [4]Пробовал также OemToAnsi(PCahr(st2), PChar(st2)). У меня вроде бы все получилось, но когда перешел на другую машину, опять ничего не вышло.