Вроде стандартные строчки (прост читаем побайтово и записываем в другой фал) но столкнулся с проблемой в исходящем файле на 1 байт больше - последний байт входящего файла в исходящем дублируется. Как исправить ? PHP: while(!feof(in)) { fread(&t,sizeof(char),1,in); i++; fwrite(&t,sizeof(char),1,out); }
давно такими делами не занимался, но мне кажется как вариант можно попробовать в условии не feof, а кол-во байт в этом файле. и типо того int count_in=колво байт в файле; int i=0; (while i!=count_in)//как то наподобие { ... i++; }
Функция feof() возвращает true только после того, как функция fread() прочитала 0 байт. То есть твой цикл должен выглядеть приблизительно так: Code: fread(&t,sizeof(char),1,in); while(!feof(in)) { i++; fwrite(&t,sizeof(char),1,out); fread(&t,sizeof(char),1,in); }