Как сохранить файл в кодировке Windows?
Модераторы: m0p3e, edward_K, Модераторы
Как сохранить файл в кодировке Windows?
Подскажите, очень нужно. Ну а задача состоит в том, чтоб экспортировать платежки в банк. Формирую файл, но он по умолчанию создается в кодировке DOS, а банковский клиент требует Windows.
-
- Постоянный гость
- Сообщения: 56
- Зарегистрирован: 25 июл 2005, 16:42
Предлагаю два экстренных варианта.
1) С помощью например файлового менеджера FAR. Копируешь в буфер обмена содержимое текстового файла в вормате DOS. Создаешь по Shift-F4 текстовый файл в формате Windows. Вставляешь туда из буфера. И опа файл в новой кодировке.
2) С одной стороны чуть сложнее и проще В Делфях компилируешь следующий проект. Получаешь исполняемый файл. В командной строке в качестве первого параметра экзешника указываешь Dos-файл, а вторым параметром имя будущего Win-файла.
----
program DosToWin;
{$APPTYPE CONSOLE}
uses
SysUtils,System,Windows;
var FileName : string;
WFileName : string;
FW,FR: TextFile;
Str : PChar;
RStr : string;
begin
{ TODO -oUser -cConsole Main : Insert code here }
if ParamStr(1) <> '' then begin
FileName := ParamStr(1);
WFileName := 'W'+FileName;
AssignFile(FR, FileName);
AssignFile(FW, WFileName);
Reset(FR);
Rewrite(FW);
while not eof(FR) do begin
Readln(FR,RStr);
Str := PChar(Rstr);
OEMToChar(Str,Str);
RStr := Str;
Writeln(FW, RStr);
end;
CloseFile(FW);
CloseFile(FR);
end;
end.
----
3) Можно на VIP-е написать интерфейс-экспорта в котором сразу перекодировать символы по перекодировочной таблице. А может там есть функции для работы в "современном формате", но это зависит от версии Атлантиса.
4) С помощью чего формируются вообще платежки? Это зарплатовские платежки?
1) С помощью например файлового менеджера FAR. Копируешь в буфер обмена содержимое текстового файла в вормате DOS. Создаешь по Shift-F4 текстовый файл в формате Windows. Вставляешь туда из буфера. И опа файл в новой кодировке.
2) С одной стороны чуть сложнее и проще В Делфях компилируешь следующий проект. Получаешь исполняемый файл. В командной строке в качестве первого параметра экзешника указываешь Dos-файл, а вторым параметром имя будущего Win-файла.
----
program DosToWin;
{$APPTYPE CONSOLE}
uses
SysUtils,System,Windows;
var FileName : string;
WFileName : string;
FW,FR: TextFile;
Str : PChar;
RStr : string;
begin
{ TODO -oUser -cConsole Main : Insert code here }
if ParamStr(1) <> '' then begin
FileName := ParamStr(1);
WFileName := 'W'+FileName;
AssignFile(FR, FileName);
AssignFile(FW, WFileName);
Reset(FR);
Rewrite(FW);
while not eof(FR) do begin
Readln(FR,RStr);
Str := PChar(Rstr);
OEMToChar(Str,Str);
RStr := Str;
Writeln(FW, RStr);
end;
CloseFile(FW);
CloseFile(FR);
end;
end.
----
3) Можно на VIP-е написать интерфейс-экспорта в котором сразу перекодировать символы по перекодировочной таблице. А может там есть функции для работы в "современном формате", но это зависит от версии Атлантиса.
4) С помощью чего формируются вообще платежки? Это зарплатовские платежки?
Здесь возникла странная проблема, связанная с тем, что если в шаблоне встречается буква 'я', то в результируещем файле следующий символ ломается. Переключил на DOS - все нормально. Кроме того, как уже писал, после экспорта нужно 'шапку' прицепить к файлу, а по умолчанию она в DOS кодировке.Поставьте в настройке экспорта вид кодировки Windows-1251
-
- Посетитель
- Сообщения: 44
- Зарегистрирован: 27 янв 2006, 14:21
-
- Постоянный гость
- Сообщения: 56
- Зарегистрирован: 25 июл 2005, 16:42
-
- Новичок
- Сообщения: 22
- Зарегистрирован: 16 ноя 2005, 06:54
- Откуда: Владивосток
- Контактная информация: