我卡住/努力解決問題我嘗試在C(Linux)使用API調用(僅)通過命令行將多個輸入文件複製到一個輸出文件。我已經在互聯網上尋找答案,但似乎沒有解決。 我的程序允許我通過命令行指定多個輸入文件和一個輸出文件。例如:C:複製多個文件到一個
./archiver file1.txt file2 file3 file4 outputfile
予讀取使用argc
/argv
這些參數。由於某種原因,當我做ls -l
時,./archiver
和outputfile
具有相同的字節數,因此意味着我的輸入文件都沒有被複制到我的輸出文件中,無論是否在內存中(當我做cat outputfile
時顯示了其中一堆)
我的輸入文件中的內容都不在我的輸出文件中。
請你能幫助我,因爲在那些「」我不知道該怎麼辦我已經嘗試閱讀malloc()
等,但我不知道如何實現,或者如果那甚至在這裏相關。
任何幫助表示讚賞,謝謝你的時間。
file_desc_in = open(argv[i],O_RDONLY,0);
//NEED a loop to copy multiple files in...
while (!eof) {
bytes_read = read(file_desc_in, &buffer, sizeof(buffersize));
if (bytes_read > 1)
bytes_written = write(file_desc_out, &i, bytes_read);
else {
eof=1;
}
我沒有包括錯誤,但我確實有錯誤。感謝您立即回覆。
發表一些代碼,否則不可能說出什麼是錯的。 – 2010-12-16 22:41:51
對不起那夠了嗎? – donok 2010-12-16 22:48:43
我懷疑這是一項家庭作業 - 如果是的話,你應該這樣標記它。你的問題很不清楚 - 我認爲你很沮喪,也許你的任務已經很晚了,但請儘量清楚,以便我們知道如何提供幫助。您是否試圖連接多個文件,或者您是否試圖以這種方式存儲它們,以便稍後可以輕鬆地將它們分離回原始文件中? – nategoose 2010-12-16 22:53:42