ИванМН
Местный знаток
Дорогие спецы! Имеем код:
int Handle = FileOpen("2022.02.01 12-00",FILE_ANSI|FILE_WRITE|FILE_COMMON,'-'); //открыли для записи
FileWrite(Handle,"1","643","USDCAD","[11-1.30-0.70]");//записали набор данных
FileSeek(Handle,0,SEEK_SET);//переставили указатель в начало файла (это, думаю, излишне, но всё же)
FileClose(Handle);//закрыли файл
Handle = FileOpen("2022.02.01 12-00",FILE_ANSI|FILE_SHARE_READ|FILE_COMMON,'-');//открыли для чтения
Print(FileTell(Handle)," ",FileReadNumber(Handle)," ",FileReadNumber(Handle));
FileClose(Handle);//закрыли файл
Запись в журнале должна содержать в себе текущую позицию указателя, пробел, первое считанное значение из файла (1), пробел, второе считанное значение из файла (643). Вместо этого в журнал выдаётся следующее:
6 643.0 1.0
То есть файловый указатель по непостижимой мною причине стоит не на начале файла, а в шести байтах от него, на втором разделителе ("-"), а последующее чтение происходит справа налево. Попытки переставить указатель в начало файла при помощи функции FileSeek успеха не принесли.
Моего интеллекта для осознания причины происходящего недостаточно. Прошу пояснить, что это за дичь.
int Handle = FileOpen("2022.02.01 12-00",FILE_ANSI|FILE_WRITE|FILE_COMMON,'-'); //открыли для записи
FileWrite(Handle,"1","643","USDCAD","[11-1.30-0.70]");//записали набор данных
FileSeek(Handle,0,SEEK_SET);//переставили указатель в начало файла (это, думаю, излишне, но всё же)
FileClose(Handle);//закрыли файл
Handle = FileOpen("2022.02.01 12-00",FILE_ANSI|FILE_SHARE_READ|FILE_COMMON,'-');//открыли для чтения
Print(FileTell(Handle)," ",FileReadNumber(Handle)," ",FileReadNumber(Handle));
FileClose(Handle);//закрыли файл
Запись в журнале должна содержать в себе текущую позицию указателя, пробел, первое считанное значение из файла (1), пробел, второе считанное значение из файла (643). Вместо этого в журнал выдаётся следующее:
6 643.0 1.0
То есть файловый указатель по непостижимой мною причине стоит не на начале файла, а в шести байтах от него, на втором разделителе ("-"), а последующее чтение происходит справа налево. Попытки переставить указатель в начало файла при помощи функции FileSeek успеха не принесли.
Моего интеллекта для осознания причины происходящего недостаточно. Прошу пояснить, что это за дичь.