![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Unicod ы не идут в Word [D5, Win2k]
Orxan © (2006-08-24 17:05:00)Помогите пожалуйста как правильно нужно данные из полей ,которые содержат юникоды, записывать в Word.
procedure x;
var Q:TOracleQuery;
begin
......
Q.SQL.TExt:='SELECT a FROM table';
Q.Execute;
wordapp.Selection.InsertAfter(Q.FieldAsString('a'));
......
end;
Но в данномслучае печатаетса знак '?'
Способо.
Orxan (2006-08-28 13:26:00) [1]С вордом все ясно.
Вся проблема в TOracleQuery. сразу после активизирования запроса смотрю какой тип у поля, он автоматически присваивает ему стринг. Я просмотрел весь список типов у TOracleQuery но типа WideString среди них нет.
Можно ли использовать блоб поле?
Anatoly Podgoretsky (2006-08-28 12:56:00) [2]Ворд работает только с Юникод, а WideString это и есть Юникод строка в чистом виде.
Orxan (2006-08-28 09:33:00) [3]У компонента TOracleQuery нет FieldByName.А есть конкретно FieldAsString, FieldAsFloat, и т.д. . Я понимаю. это уже не юникод.
Можно получить тип Variant. Но как дальше им пользоватся, чтобы ничего не терять, не знаю.
А ворд принимает тип WideString. Поэтому вручную, скажем #399 превосходно печатается в ворд.
Anatoly Podgoretsky (2006-08-25 15:09:00) [4]Я не знаю, что такое FieldAsString, зато есть как минимум FieldByName.Value
Но причем тут все это ShowMessage это уже не Юникод, со всеми вытекающими последствиями.
Это отностистся и к передаче в Ворд не Юникод строк, что будет одному богу известно.
TOracleQuery не использую, поэтому все возможности не известны. Если в нем информация о типе поля например?
Orxan (2006-08-25 11:36:00) [5]// AsString это не Юникод
Я понимаю, что не юникод. Но типаWideStringу компонента TOracleQuery не существует. Есть типVariant, и в этом случае печатается знак '?'.
Q.Field('a')
palva (2006-08-25 08:35:00) [6]Покажет содержимое колонки "a". YurikGL хочет выяснить кодировку в которой база возвращает строку.
Anatoly Podgoretsky (2006-08-24 22:21:00) [7]"а" покажет и что?
YurikGL (2006-08-24 21:27:00) [8]
Q.SQL.TExt:='SELECT a FROM table';//что показывает?
Q.Execute;
ShowMessage(Q.FieldAsString('a'));
Anatoly Podgoretsky (2006-08-24 20:59:00) [9]AsString это не Юникод