|
|
|
ADO->dbf->русская кодировка. Проблема!
|
|||
|---|---|---|---|
|
#18+
Народ, нужна помощь! Работаю с dfb-файлом формата dBase IV через ADO: Код: plaintext 1. 2. Записываю таким образом: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Когда открываю dbf-ник, то вижу вместо русских букв ???????? (сплошные вопросительные знаки). Почему так и как это лечится? P.S. Пробовал другие форматы , например dBase for Windows но результат тотже. :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2005, 17:55 |
|
||
|
ADO->dbf->русская кодировка. Проблема!
|
|||
|---|---|---|---|
|
#18+
1) dBase 5.0 Это не есть dBase IV. Там есть разница, хоть и не особо значительная, но есть. 2) Через что ты смотришь свою dbf? Может клиент сам по себе русских букв показывать не умеет? 3) Что находится в 29-ом байте заголовка dbf? Какая там циферка стоит? 4) В какой кодировке текст в ADO-клиенте? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2005, 18:50 |
|
||
|
ADO->dbf->русская кодировка. Проблема!
|
|||
|---|---|---|---|
|
#18+
White Owl 1) dBase 5.0 Это не есть dBase IV. Там есть разница, хоть и не особо значительная, но есть. Я пробовал и так: Код: 1. 2. Ничего не меняет White Owl 2) Через что ты смотришь свою dbf? Может клиент сам по себе русских букв показывать не умеет? Умеет, однозначно, т.к. я пробовал смотреть через Database Desktop, FoxPro и плагин для Total Commander - результат одинаковый... А создавал базу в Database Desktop. White Owl 3) Что находится в 29-ом байте заголовка dbf? Какая там циферка стоит? 0x57 - кодовая страница 1251 Windows ANSI White Owl 4) В какой кодировке текст в ADO-клиенте? Что имеется в виду в ADO-клиенте? В VCL компоненте где набирается русский текст и откуда значения попадают в dbf? Т.е. TEdit-е? По-идее в 1251 , хотя не уверен... а как узнать/поменять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2005, 19:59 |
|
||
|
ADO->dbf->русская кодировка. Проблема!
|
|||
|---|---|---|---|
|
#18+
Mr.Danя пробовал смотреть через Database Desktop, FoxPro и плагин для Total Commander - результат одинаковый... А создавал базу в Database Desktop. А открыть в хекс-редакторе и проверить что там в действительности? :) Mr.Dan White Owl 3) Что находится в 29-ом байте заголовка dbf? Какая там циферка стоит? 0x57 - кодовая страница 1251 Windows ANSI Не верно. Должно быть 0xC9 http://support.microsoft.com/default.aspx?scid=kb;en-us;129631 Mr.DanЧто имеется в виду в ADO-клиенте? В VCL компоненте где набирается русский текст и откуда значения попадают в dbf? Т.е. TEdit-е? По-идее в 1251 , хотя не уверен... а как узнать/поменять? Узнать просто - прочитать проперть Text (или как она там) и посмотреть в отладчике в хекс-виде :) Как поменять - некоторые библиотеки виджетов умеют делать конвертацию кодировок сами, кажется VCL не умеет... Проще всего, прочитать текст из поля, прогнать через собственную процедуру конвертации и послать в базу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2005, 20:54 |
|
||
|
ADO->dbf->русская кодировка. Проблема!
|
|||
|---|---|---|---|
|
#18+
Была такая шняга: крокозяблы в гриде (MS ADO DataGrid Control) отображались (смотрел dbf). Причиной оказалась установка Бульдозерного движка баз данных (BDE). Так вот эта зараза где-то в реестре меняла настройки dBase драйвера (устанавливала code page в Ansii). Приходилось менять кодовую страницу на CP866. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2005, 10:42 |
|
||
|
ADO->dbf->русская кодировка. Проблема!
|
|||
|---|---|---|---|
|
#18+
White Owl А открыть в хекс-редакторе и проверить что там в действительности? :) Открывал, действительно абра-кадабра :) White Owl Не верно. Должно быть 0xC9 http://support.microsoft.com/default.aspx?scid=kb;en-us;129631 Вот тебе на, а я зрил в другой источник . Поистине информация разная. Странно только то что базу-то я создавал в Database Desktop-е, который почему-то выставил не C9, а 0x57 :( ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2005, 11:24 |
|
||
|
|

start [/forum/topic.php?fid=57&tid=2032673]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 357ms |

| 0 / 0 |
