![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 15.04.2009
Сообщений: 7
|
![]()
Доброго времени суток.
Есть таблица БД MS Access 2000. В текстовом поле этой таблицы находятся фонетические символы звуков английского языка. Попадают данные в это поле так: в MS Word делаю вставку символа и копирую через буфер обмена в MS Acсess. Вопрос в следующем. Пытаюсь достать из программы на Delphi 7 данные из этого поля. Получается пока не очень: фонетические символы, идентичные буквам латинского алфавита (например, k или t), выводятся нормально, а вот остальные выводятся как знаки вопроса. Код в Delphi 7 такой: ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('SELECT * FROM Table1 WHERE Nomer = 1 '); ADOQuery1.Open; ShowMessage( ADOQuery1.FieldByName('Field1').AsS tring ); ADOQuery1.Close; То же самое проделал в Lazarus (FPC 2.6.0) c тем же результатом. Использование AnsiToUTF8, SysToUTF8 не помогло. Что-нибудь подскажете по решению вышеописанной проблемы? Последний раз редактировалось dimmm; 05.03.2013 в 07:45. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,527
|
![]() Код:
или Код:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 05.03.2013 в 10:01. |
![]() |
![]() |
![]() |
#3 |
Регистрация: 15.04.2009
Сообщений: 7
|
![]()
evg_m, если я правильно понял то, что Вы предложили попробовать, то вот такой код
var S: WideString; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('SELECT * FROM Table1 WHERE Nomer = 1 '); ADOQuery1.Open; S:=ADOQuery1.FieldByName('Field1'). AsVariant; ShowMessage(S); ADOQuery1.Close; к сожалению, выдал тот же результат: вместо нужных символов - знаки вопроса. Последний раз редактировалось dimmm; 05.03.2013 в 23:24. |
![]() |
![]() |
![]() |
#4 |
Регистрация: 15.04.2009
Сообщений: 7
|
![]()
Немного поэкспериментировал. Оказалось, что все символы диапазонов Юникода "Расширенная латиница - A", "Расширенная латиница - B", "Фонетические значки", "Греческий основной" выводятся в виде знаков вопроса. Символы "Латиницы-1" выводятся частично в виде знаков вопроса, частично другими символами, т.е. не теми, которые должны быть. "Основная латиница" выводится правильно.
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 25.07.2009
Сообщений: 533
|
![]()
Вот есть вероятность что в UTF есть все эти символы. Но 7 не поддерживает UTF(VCL библиотека).
Берите более поздние версии.
Маразм крепчал. Еноты пели...
R-style Dataknowlege Access Member Account (RDAMA) |
![]() |
![]() |
![]() |
#6 |
Ваш К. О.
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,799
|
![]()
Нужно попробовать вытащить исходный OleVariant из ADO Recordset, который содержит еще неиспорченный Unicode. Как-то так:
Код:
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ошибка при получении данных | Lkon | Microsoft Office Excel | 4 | 22.02.2012 00:02 |
Создание чередования слов, для обучения английского языка | CiyPetrov | Помощь студентам | 3 | 27.10.2010 04:02 |
Программа для изучения Английского языка | vasek123 | Софт | 5 | 17.06.2010 08:08 |
Банальные проблемы с кодировками и наборами символов. | Killer_djon | PHP | 5 | 02.06.2009 14:38 |