powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / как побороть кракозябры?
14 сообщений из 14, страница 1 из 1
как побороть кракозябры?
    #32786140
Matilda Cherstin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
волею судеб пришлось открывать из Excel'a и Access'a 1С-ный файл (велели мне мост построить :) ), а полезли при этом кракозябры (файлы прилагаю).
Что, Господа, посоветуете мне предпринять, дабы кракозябры побороть в удобочитаемый вид?
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32786143
Matilda Cherstin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и индекс тоже прилагаю
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32786215
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
visual foxpro конечно нет
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32786222
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дело в том, что dbf файлы 1с помечены кодовой страницей 1251, тогда как Excel и, наверное, Access предполагают, что файлы dbf всегда идут в кодировке OEM, то есть 866.
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32786235
Matilda Cherstin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
визуал есть, но задача в том, чтобы дэбээфник видеть не в фокспре, а в Excel'е и Access'е
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32786292
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
во первых в 1с есть богатый арсенал оружия для перевода в ексель и если им воспользываться то возможно это будет проше и логичнее
во вторых у вас база формата похожего на досовский фокс где естественно была дос кодировка а в таблице кодировка виндос и когда ексель его открывает у него крыша плавно съезжает и он ставит не ту кодировку
можно открыть файл в фоксе проставить страницу(необязательно ) сделать
копию в таблицу ексель 5
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32786304
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
например
use d:\sc2066 in 0 excl
select sc2066
copy to d:\sc2066 xl5

а без обработки помоему не получиться
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32786323
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хотя через 1с не используя фокс наверняка тоже можно скопировать
там типа создать объект справочник создать объект ексель таблица и в цикле перенести все записи (не знаю 1с)
и у пользователя создасться иллюзия моста
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32787035
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эта таблица точно была получена из 1С?

Дело в том, что эта таблица создана в формате (FoxBASE+/dBASE III PLUS, no memo), в кодовой странице 1251, но при этом собственно признак кодовой страницы в ней не проставлен!

Если такую таблицу открывать в Excel как обычный файл (File - > Open), то он, конечно откроется, но будут закорючки, поскольку такое открытие предполагает кодовую страницу 866.

Таблицы с кодовой страницей 1251 надо открывать в Excel через ODBC-драйвер (Данные -> Внешние данные). У меня содержимое нормально прочиталось при использовании драйвера ODBC для Visual FoxPro Table
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32787527
Chuveljov Andrew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1С не выставляет кодовую страницу в заголовке файла. Это расширение стандарта по сравнению с dBase. Кстати версии 1С 7.5 и 7.0 использовали 866 кодовую страницу!!!

___________________
Всё вышеизложенное есть моё частное мнение и не претендует на полноту изложения.
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32788091
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi Matilda!

Если есть VFP, то можно написать СУПЕР-ПУПЕР программу, по конвертации
такого dbf-а в вид, удобоваримый Excel-ем (напрямую).
Вот тебе заготовка:
Код: plaintext
1.
2.
3.
4.
5.
ln1 = FOPEN("Sc2066.dbf",  12 )
FSEEK(m.ln1,  29 ,  0 )
FWRITE(m.ln1, CHR( 201 ))
FCLOSE(m.ln1)
USE Sc2066.dbf SHARED
COPY TO MyGoodTable.dbf TYPE FOX2X AS  866 
Имя файла (как входного так и выходого) можно оформить параметрами, окно
фокса можно спрятать - получится почти что консольная программа
переконвертации :)

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32788401
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зачем таблица и так открываеться может так
USE Sc2066.dbf excl && кодовая страница
COPY TO MyGoodTable.dbf TYPE FOX2X AS 866
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32788416
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати и проставлять кодовую страницу совсем не обязательно по умолчанию все нормально русские буквы видны и так
...
Рейтинг: 0 / 0
как побороть кракозябры?
    #32790291
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi leaf!

Я нарисовал как сдеать чтоб без лишних вопросов работало. Ты же предлагаешь
юзеру постоянно выбирать в списке нужную CP.

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / как побороть кракозябры?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]