用C改变文件中的一个字节

我有一个文件流打开并准备好了。

如何在流中访问和更改单个字节,以便更改反映在文件中?

有什么建议?

#include "stdio.h" int main(void) { FILE* f = fopen("so-data.dat", "r+b"); // Error checking omitted fseek(f, 5, SEEK_SET); fwrite("x", 1, 1, f); fclose(f); } 
 FILE* fileHandle = fopen("filename", "r+b"); // r+ if you need char mode fseek(fileHandle, position_of_byte, SEEK_SET); fwrite("R" /* the value to replace with */, 1, 1, fileHandle); 
 #include  /* standard header, use the angle brackets */ int main(void) { char somechar = 'x'; /* one-byte data */ FILE* fp = fopen("so-data.txt", "r+"); if (fp) { fseek(fp, 5, SEEK_SET); fwrite(&somechar, 1, 1, fp); fclose(fp); } return 0; /* if you are on non-C99 systems */ }