我創建文件1.txt
2.txt
並將一些內容寫入1.txt
。
然後我使用下面的代碼,並要複製內容到2.txt
。
但它不起作用。 2.txt
中沒有任何內容。sendfile不復制文件內容
你能解釋我的錯誤嗎?
int main()
{
int fd1 = open("1.txt",O_RDWR);
int fd2 = open("2.txt",O_RDWR);
struct stat stat_buf ;
fstat(fd1,&stat_buf);
ssize_t size = sendfile(fd1,fd2,0,stat_buf.st_size);
cout<<"fd1 size:"<<stat_buf.st_size<<endl; //output 41
cout<<strerror(errno)<<endl; //output success
close(fd1);
close(fd2);
return 0;
}
這標記 'C',但很明顯,使用C++流。不要這樣做。 – unwind
已移至C++。 ;) –
因爲我使用linux C API - 「sendfile」,所以我taaged「C」。我會關注這一點,謝謝! – Tengchao