Здравствуйте, Какая разница, Вы писали:
КР>Здравствуйте, amantz, Вы писали:
A>>Здравствуйте!
A>>У меня следующая проблема.
A>>Стоит задача: попарно переставить байты в файле. Очень просто! но...
A>>Я считываю символ из файла c помощью getc, и потом записываю в новый файл через putc. Но, если таковым символом является 0х0D (возможно, даже без 0х0А), то 0х0D у меня записывается дважды.
A>>Есть ли стандартный способ избежания этой неприятности?
A>>Заранее благодарен!
КР>А если открыть файл как бинарный
КР>Узнать его длину
КР>Зарезервировать буфер под этот размер
КР>прочитать файл в буфер
КР>переставить соседние байты
КР>записать буфер в выходной файл
КР>закрыть файлы
--------
Спасибо за помощь!
Я, в общем-то, и делаю через буфер... разве что не открываю исходный файл в бинарном режиме...
Но я наконец понял вот что: дело именно в 0x0A, т.е. когда я записываю из буфера символ 0х0А, перед ним всегда записывается 0х0D... буду в бинарном пробовать.