|
|
|
Конвертирование codepage 1251 в 866
|
|||
|---|---|---|---|
|
#18+
Всем привет ! Натолкните на мысль. Проблемка следующая. В папке есть куча DBF-файлов с кодовой страничкой 1251. Есть желание программно конвертировать их в 866. Заполняю ADIR()-ом массив.Организую цикл по кол-ву файлов и при открытии таблицы появляется окно диалога выбора codepage. Это все хорошо , но в том случае , если таблиц не более десятка. В моем случае - их более 300. Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2006, 10:13 |
|
||
|
Конвертирование codepage 1251 в 866
|
|||
|---|---|---|---|
|
#18+
А использовать cpzero.prg НЕ пробовали??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2006, 10:46 |
|
||
|
Конвертирование codepage 1251 в 866
|
|||
|---|---|---|---|
|
#18+
Владимир , а если подробнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2006, 11:57 |
|
||
|
Конвертирование codepage 1251 в 866
|
|||
|---|---|---|---|
|
#18+
Посмотри файлик: ...\Microsoft Visual FoxPro 9\Tools\Cpzero\Cpzero.prg И еще. В Config.fpw строка Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2006, 12:08 |
|
||
|
Конвертирование codepage 1251 в 866
|
|||
|---|---|---|---|
|
#18+
Владимир , спасибо за подсказку . Сейчас буду пробовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2006, 12:15 |
|
||
|
Конвертирование codepage 1251 в 866
|
|||
|---|---|---|---|
|
#18+
rino_lanВсем привет ! Натолкните на мысль. Проблемка следующая. В папке есть куча DBF-файлов с кодовой страничкой 1251. Есть желание программно конвертировать их в 866. Заполняю ADIR()-ом массив.Организую цикл по кол-ву файлов и при открытии таблицы появляется окно диалога выбора codepage. Это все хорошо , но в том случае , если таблиц не более десятка. В моем случае - их более 300. Заранее спасибо. Здесь что-то в Вашей логике не правильно. Если таблица уже имеет признак кодовой страницы, то окно диалога выбора CodePage не появляется. Если таблица уже имеет признак кодовой страницы, то изменить этот признак, конечно можно, но после этого придется вручную перекодировать все содержимое. Ведь наполнение останется в старой кодовой странице. Почитай описание следующих команд и функций CPDBF() CPCURRENT() SET CPDIALOG ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2006, 13:57 |
|
||
|
Конвертирование codepage 1251 в 866
|
|||
|---|---|---|---|
|
#18+
Кодовая страница - это 29 байт в заголовке файла. Если в него записать 0, то при вызове из FoxPro система выведет запрос. int main{ FILE * f; f=fopen("C:\\My.dbf","r+"); fseek(f,28,0); fputs('\0',sizeof(char),1,f); fcloce(f); } Смысл во всяком случае именно такой. Если есть компилятор С, получите срумент для сбития бита кодировки. Может есть косяки -компилятор образумит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2006, 17:06 |
|
||
|
Конвертирование codepage 1251 в 866
|
|||
|---|---|---|---|
|
#18+
Если придется, можно перекодировать. Это просто: минусуйте 96 от символа и будет 1251->866. Прибавьте 96 будет 866->1251. Можно сделать простенький цикл по строке. Работает быстро. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2006, 17:10 |
|
||
|
Конвертирование codepage 1251 в 866
|
|||
|---|---|---|---|
|
#18+
Может что нибудь наподобие вот такого? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2006, 17:43 |
|
||
|
Конвертирование codepage 1251 в 866
|
|||
|---|---|---|---|
|
#18+
Если просто кодовую страницу пометить Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2006, 17:47 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34036700&tid=1590622]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
75ms |
get topic data: |
9ms |
get forum data: |
7ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 405ms |

| 0 / 0 |
