c語言移動文件
㈠ c語言編程實現:將一個文件的內容復制到另一個文件。(詳細點的,考試用。)謝謝!
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#ifdefBUFSIZ
#undefBUFSIZ
#defineBUFSIZ4096
#endif
/*
使用格式:mcpy源文件目標文件
且目標文件和源文件不能一樣,否則會清空文件內容,
源文件必須存在,目標文件可存在也可不存在,如果存在,內容會被覆蓋掉。
*/
intmain(intargc,char**argv)
{
charbuf[BUFSIZ];
intmsglen;
if(argc!=3||strcmp(argv[1],argv[2])==0)
/*argc:命令行模式下,輸入的參數數目。
argv:第一個參數的首地址。*/
{
fprintf(stderr,"******************************** ");
fprintf(stderr,"Pleaseusage:%ssource_filedestination_file Andsource__file ",argv[0]);
fprintf(stderr,"******************************** ");
exit(0);
}
FILE*fp_src,*fp_des;
if((fp_src=fopen(argv[1],"r"))==NULL)
/*為空,則打開失敗*/
{
fprintf(stderr,"open%sfailed! ",argv[1]);
exit(1);
}
if((fp_des=fopen(argv[2],"w"))==NULL)
/*為空,則打開或創建失敗*/
{
fprintf(stderr,"open/create%sfailed! ",argv[2]);
exit(2);
}
while(fgets(buf,BUFSIZ,fp_src)!=NULL)
/*從源文件讀,讀失敗或到達文件尾部時,返回NULL*/
{
if(fputs(buf,fp_des)==EOF)
/*寫入目標文件,寫入失敗時,返回EOF;若成功返回寫入的位元組數*/
{
fprintf(stderr,"%sto%sfailed! ",argv[1],argv[2]);
exit(3);
}
}
printf("%sto%ssuccessful! ",argv[1],argv[2]);
return0;
}
㈡ C語言編程中如何將一個文件中的信息轉入到另一個文件
打開兩個文件,從一個文件讀數據,寫入到另一個文件,例如:
//---------------------------------------------------------------------------
#include <stdio.h>
int main(void)
{
FILE *fp1,*fp2;
char c;
fp1=fopen("dat.txt","r"); /*打開源文件*/
fp2=fopen("tot.txt","w"); /*打開將寫入的文件*/
while ((c=fgetc(fp1))!=EOF) /*將源文件fp1的內容轉存(復制)到目標文件fp2中*/
fputc(c,fp2);
fclose(fp1); /*關閉文件*/
fclose(fp2);
return 0;
}
//---------------------------------------------------------------------------
㈢ c語言怎樣移動文件指針到制定位置啊
參數為下列其中一種:
SEEK_SET:從距文件開頭 offset 位移量為新的讀寫位置;
SEEK_CUR:以目前的讀寫位置往後增加 offset 個位移量;
SEEK_END:將讀寫位置指向文件尾後再增加 offset 個位移量。
㈣ C語言編程 將一個文件復制為另一個文件
#include
int
main()
{
FILE
*one,
*two;
one
=
fopen("sfile.txt",
"r");
two
=
fopen("tfile.txt",
"w");
char
c;
while((c=fgetc(one))!=EOF)
fputc(c,two);
fflush(two);
fclose(one);
fclose(two);
return
0;
}
一個最簡單的文件復制函數,功能很有限,要求源文件和目標文件在同一個目錄下。。。。。。
㈤ C語言中怎樣將兩個文件中內容復制到一個新的文件中
1、打開文件A,B,C
2、讀取A的內容,寫入C
3、讀取B的內容,寫入C
4、關閉文件A,B,C
㈥ 怎樣用C語言將文件復制另外的文件夾
有兩種方式可以實現復制:
一、自行編寫函數,實現復制。
演算法流程如下:
1
以讀的方式打開源文件,以寫的方式打開目標文件;
2
每次讀一個位元組,並寫到目標文件中,直到達到文件結尾為止;
3
關閉兩個文件。
二、調用系統命令。
stdlib.h中的system函數,可以執行系統命令行支持的命令。
int
system(char
*cmd);
調用時就是執行cmd中的指令。
1
對於windows,就是執行dos命令,可以調用
system("
/Y
src_file
target_dir");
其中src_file為源文件,而target_dir就是目標文件夾。
2
對於Linux,需要執行shell命令cp,如下
system("cp
src_file
target_dir");
㈦ C語言習題 ()命令是用於將一個文件從一個位置移動到另一個位置。
從字面上就可以看出move是用於移動文件的。而cope有拼寫錯誤,應該是用於文件復制(拷貝),cut和paste用於分別是將文件復制到剪裁板和將文件從剪裁版粘貼到當前目錄(文件夾)下。要說明的是,這些函數盡在TC環境下具備,其他環境是沒有的,另外,這三個函數的功能都是模仿操作系統內部命令。
㈧ 如何用c語言將文件復制到自己想要的文件夾
C語言里的system("");函數可以執行命令行的幾乎所有指令,把命令行輸入的內容作為參數傳入即可。復制文件的話 應該是: 源文件 目的路徑。
例如命令行里的 c:\test.txt d:\text.txt,
也就是C語言里的:system(" c:\test.txt d:\text.txt");
或者這樣
char c[50] = " c:\test.txt d:\text.txt";
system(c);
㈨ c語言如何移動文件
()
remove()
㈩ C語言文件指針自動移動
文件內部指針不是就是用打開文件函數所賦值的那個指針,
打開函數的指針,是文件流的指針,指向這個文件流。
內部指針指向當前操作在文件流中的位置
fp是文件指針的話
可以使用ftell(fp)來獲取當前內部指針位置。
也有fseek函數來設置內部指針位置,這些函數調用的時候,必須使用文件流的 指針。文件流的指針始終是這個fp,但內部指針的位置是一直在移動的,沒有一個可見的內部指針的變數來讓你操作,只對文件指針操作就可以了。
讀寫文件的時候內部指針自動移動,是C的IO系統管理來實現的,這個文件流其實仍然是IO,跟鍵盤滑鼠都是由IO系統管理來做的,不用去關心底層的具體操作,只要知道讀寫操作以後內部指針變了,就行。