Добрый вечер.
С более менее простыми задачами могу помочь Сестре разобраться, а вот с сложными... уже не то... не хватает знаний...
=======================================================
Задание:
Написать программу, которая принимает на вход текстовый файл , состоящий из строк вида "смещение значение" и в заданном бинарном файле изменяет байты по этим смещениям на эти новые значения.
Например, если текстовый файл имеет вид:
1556 235
1642 90
1643 90
1644 90
то значит, что в бинаррнике надо поменять 4 байта-один по смещению 1556 заменить на 235 и три, начиная со смещения 1642, заменить на 90.
=======================================================
Насколько я понимаю тут две части - открываем два файла. Бинарный разбираем в типизированную запись (или нет?), а текстовый - в двумерный массив. Потом идем по массиву и осуществляя переход со смещением - меняем - байты. Только как?
Есть идеи? о_О? Может, где посмотреть?
Заранее спасибо!
while not eof(f) do begin
read(f, offset, new_val);
{ и сразу меняешь данные в бинарном файле }
seek(f_bin, offset); write(f_bin, new_val);
end;
while not eof(f) do begin
read(f, offset, new_val);
{ и сразу меняешь данные в бинарном файле }
seek(f_bin, offset); write(f_bin, new_val);
end;
seek(f_bin,1556); write(f_bin, 235);
Не совсем.
В операторе write должна быть переменная, а не константа. Но в переменной должно быть записано число 235.