Да, так и делается, в основном
Код:
var
b: byte;
begin
b:= #FF;
with TFileStream.create('Имя файла', fmOpenReadWrite) do
try
Seek(10,soFromBeginning);
Write(b,1);
finally
free;
end;
end;
З.Ы.
Файловые потоки используются как правило если надо записать/считать файл в больших объёмах, а если нужно байт всего лишь заменить, лучше делать так
Код:
var
f: file of byte;
b: byte;
begin
AssignFile(f, 'Имя файла');
Reset(f); // или Append(f) Rewrite(f)
seek(f,10); // поставить текущее положение
b:= #FF;
write(f, b); // записать 1 байт
//read(f,b); // прочитать 1 байт
//Size(f); // количество байт в файле.
//Eof(f); // конец файла
CloseFile(f);
end;