Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как получить кодировку 1251 Win / 11 сообщений из 11, страница 1 из 1
24.09.2007, 06:11
    #34820386
mazук
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить кодировку 1251 Win
Вопрос следующего характра, всем привет...

делаю выгрузку для сбербанка, там нужно кодировка 1251 Виндовз,

маялся не слабо, подскажите какой командой или еще каким способом можно ручками сделать самостоятельный перевод в кодировку 1251 ???
...
Рейтинг: 0 / 0
24.09.2007, 07:54
    #34820428
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить кодировку 1251 Win
У VFP кодировка изначально 1251 и ничего преобразовывать не надо.
...
Рейтинг: 0 / 0
24.09.2007, 08:48
    #34820471
АлексейО
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить кодировку 1251 Win
если вы работает из FP DOS, подойдет фукция
CPCONVERT(nCurrentCodePage, nNewCodePage, cExpression)
...
Рейтинг: 0 / 0
24.09.2007, 09:43
    #34820557
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить кодировку 1251 Win
АлексейОесли вы работает из FP DOS, подойдет фукция
CPCONVERT(nCurrentCodePage, nNewCodePage, cExpression) Не подойдет, потому что в FPD ее нету.

Автору следует детальнее вопрос описывать (версия фокса, формат выгрузки и т.п.), тут не клуб ясновидящих телепатов ежедневно делающих выгрузки в сбербанк
...
Рейтинг: 0 / 0
24.09.2007, 10:27
    #34820667
Как получить кодировку 1251 Win
Не подойдет, потому что в FPD ее нету.
И давно ее оттуда выкинули? И чем она помешала?
...
Рейтинг: 0 / 0
24.09.2007, 11:04
    #34820769
mazyk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить кодировку 1251 Win
дело все в том что прога написана на фоксе 9 , когда идет выгрузка в файл то в сбербанке открывают на проверку через Ексель, естественно он орет на несовпадение формата файла, так вот если сделать через заднее крыльцо как сделать экспорт в эксель а потом получить уже из экселя табличку то прокатывает в сбербанке такая манипуляция, т.е. примерно вот так вот

copy to XXXX as 866 TYPE FOX2X

если одной командой делать, так вот вопрос то, что в сбербанке лапшу вешают по поводу кодировки 1251 ? или я тогда точно ничего не могу понять то...
...
Рейтинг: 0 / 0
24.09.2007, 11:48
    #34820904
Как получить кодировку 1251 Win
copy to XXXX as 866 TYPE FOX2X
Эта команда выдает в 866 кодировке (as 866). Если надо в виндовой, то просто убрать это указание.
...
Рейтинг: 0 / 0
24.09.2007, 11:52
    #34820919
mazyk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить кодировку 1251 Win
если убрать указание то в Екселе файл не откроется и сбербанк пошлет подальше
...
Рейтинг: 0 / 0
24.09.2007, 12:44
    #34821088
Как получить кодировку 1251 Win
Короче, образец правильного файла в студию и тогда можно о чем-то говорить.
...
Рейтинг: 0 / 0
24.09.2007, 12:54
    #34821122
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить кодировку 1251 Win
mazykесли убрать указание то в Екселе файл не откроется и сбербанк пошлет подальше Возьми заготовку (пустую dbf-ку) в сбербанке, такую чтобы структура заголовка их устроила, копируй и заполняй:
Код: plaintext
1.
2.
3.
copy file шаблон.dbf to вбанк.dbf
sele  0 
use вбанк
append from ...
...
Рейтинг: 0 / 0
24.09.2007, 14:25
    #34821453
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить кодировку 1251 Win
mazykесли убрать указание то в Екселе файл не откроется и сбербанк пошлет подальше
А Вы пробовали? Точнее, пробовали читать HELP по команде COPY TO?

Excel открывает напрямую DBF-таблицы (File-Open), если они созданы в формате DBASE III или младше. За это как раз отвечает опция TYPE FOX2X.

Кодировка же файла на факт открытия или не открытия DBF-таблицы никакого влияния не оказывает. Она определяет как будет читаться уже отображенная информация. Т.е. увидят ли пользователи читаемый или не читаемый текст.

Excel предполагает, что таблица в таком старом формате имеет кодовую страницу 866. И соответственно интерпретирует символы.

Это значит, что команда должна быть именно

Код: plaintext
copy to XXXX TYPE FOX2X as  866  

Однако, если по каким-либо соображениям, требуется кодировка отличная от 866, то пожалуйста, указывайте нужную Вам кодировку.

Код: plaintext
copy to XXXX TYPE FOX2X as  1251 

Если кодировка не указана явно, то будет использована текущая кодовая страница среды FoxPro.

Код: plaintext
copy to XXXX TYPE FOX2X

Повторюсь. На факт открытия такой таблицы в Excel это не повлияет никак. Кодировка определяет как символы будут читаться.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как получить кодировку 1251 Win / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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