總結:
ofstream 一般用於輸出操作, ifstream 一般用於讀入操作, 修改檔案的話, 原來一直這倆配合著用.
發現父類 fstream 可以直接使用. 挺簡單的.
參考: 借圖
上**:
std::cout << "path : ";
std::string path;
std::cin >> path;
//先讀取8個位元組修改
uchar data[dzsize] = ;
std::ifstream fin(path, ios::binary | ios::in);
fin.seekg(dzsize, ios::beg);
fin.read((char*)data, dzsize);
fin.close();
//前8位取反
for (int k = 0; k < dzsize; k++)
//ios::in 保證開啟檔案的同時可以進行讀寫操作
std::ofstream fout(path, ios::binary | ios::in);
//末尾檢查總的檔案大小
fout.seekp(0, ios::end);
size_t totalsize = fout.tellp();
//跳至開頭
fout.seekp(dzsize, ios::beg);
fout.write((const char *)data, dzsize);
fout.close();
fstream dzfile(path, ios::binary | ios::in | ios::out);
dzfile.seekg(0, ios::end);
int size1 = dzfile.tellg();
dzfile.seekp(0, ios::end);
int size2 = dzfile.tellp();
dzfile.seekg(dzsize, ios::beg);
dzfile.read((char*)data, dzsize);
dzfile.seekp(dzsize, ios::beg);
dzfile.read((char*)data, dzsize);
//前8位取反
for (int k = 0; k < dzsize; k++)
dzfile.seekg(dzsize, ios::beg);
dzfile.write((const char *)data, dzsize);
dzfile.seekp(dzsize, ios::beg);
dzfile.write((const char *)data, dzsize);
dzfile.close();
C C 檔案讀寫
c語言 include include int main void 寫入 fwrite msg,1,strlen msg 1,stream 重定位流 資料流 檔案 上的檔案內部位置指標 fseek stream,0,seek set 讀出 fread buf,1,strlen msg 1,strea...
C C 檔案讀寫
c語言 1.二進位制檔案寫 includevoid main file fp null 檔案指標 fp fopen text2.txt w 開啟檔案 while fp 開啟失敗 file fp null 檔案指標 fp fopen text3.txt w 開啟檔案 while fp 開啟失敗 插入後...
c c 檔案讀寫操作
不要覺得我們說的檔案就是指txt,或者doc才是檔案,其實計算機裡面的年東西都是檔案。當我們用專門的軟體開啟他們的時候,可以看到裡面的東西,有記憶體也有二進位制 什麼的。開啟乙個檔案的格式 file p fopen home zouux 666 wb 第乙個引數是檔案的絕對路徑這裡的路徑為linux...