[問題] 想要修改舊資料檔局部內容..
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
( 未必需要依照此格式,文章條理清楚即可 )
遇到的問題: (題意請描述清楚)
想要將以有的資料檔,只修改局部內容, 結果把其他不想修改的部分也改了...
希望得到的正確結果:
原資料檔的內容為:
1 2 3 4 5 6 7 8 9
要修改第2筆資料(3 -> 0):
1 2 0 4 5 6 7 8 9
程式跑出來的錯誤結果:
結果把其他的部分都修改了:
0 0 0 0 0 0 0 0 0
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
Dev-C++
有問題的code: (請善用置底文標色功能)
FILE* ifcache; //產生原始舊資料檔
ifcache = fopen("fcache.txt","wb");
for(int i=1; i<=9; i++)
fwrite(&i,sizeof(i),1,ifcache);
fclose(ifcache);
int i=0; //修改舊資料檔內容
ifcache = fopen("fcache.txt","wb");
fseek(ifcache,2*sizeof(int), SEEK_SET);
fwrite(&i,sizeof(i),1,ifcache);
fclose(ifcache);
int buffer=0; //輸出
FILE* ofcache;
ofcache = fopen("fcache.txt","rb");
for(int i=1; i<=9; i++)
{
fread(&buffer,sizeof(buffer),1,ofcache);
cout<<buffer<<endl;
}
fclose(ofcache);
補充說明:
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.96.198.60
推
03/16 14:26, , 1F
03/16 14:26, 1F
→
03/16 14:29, , 2F
03/16 14:29, 2F
→
03/16 14:35, , 3F
03/16 14:35, 3F
→
03/16 15:24, , 4F
03/16 15:24, 4F
→
03/16 16:16, , 5F
03/16 16:16, 5F
→
03/16 16:18, , 6F
03/16 16:18, 6F
→
03/16 16:19, , 7F
03/16 16:19, 7F
→
03/16 16:37, , 8F
03/16 16:37, 8F
→
03/16 16:40, , 9F
03/16 16:40, 9F
→
03/16 17:51, , 10F
03/16 17:51, 10F
→
03/16 17:58, , 11F
03/16 17:58, 11F
→
03/17 09:11, , 12F
03/17 09:11, 12F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章