題目:給定任意一個文件名,讀取該文件,並將文件中的數據複製一份,以追加的方式寫入到該文件中。
實現:
/**
* 讀取當前文件追加到當前文件中
*/
void test_readappendfile(){
ifstream infile("test.txt", ifstream::in|ifstream::binary);
ofstream outfile("test.txt", ifstream::app|ifstream::binary);
infile.seekg(0, ifstream::end);
ifstream::streampos end = infile.tellg();
infile.seekg(0, ifstream::beg);
char b[512] = {0};
int c = 0;
for(int i = 0; i<end; i+=c){
infile.read(b, sizeof(b)/sizeof(char));
c = strlen(b);
outfile.write(b, c/sizeof(char));
}
infile.close();
outfile.close();
infile.clear();
infile.open("test.txt", ifstream::in);
//讀取文件內容
char r = 0;
while(true){
infile >> r;
if (infile.eof())
break;
cout << r;
}
infile.close();
}
test.txt文件內容:
console輸出: