『壹』 c語言編程。編寫程序實現任意類型的文件拷貝
太簡單了。。。。。
#include <stdio.h>
#include <stdlib.h>
int CopyFile(char* SrcFile,char* DesFile)
{
FILE* fp,*fw;
long length;
long n,cpyfinish;
char buf[1024];
if((fp=fopen(SrcFile,"rb"))==NULL)
{
return 1;
}
fw=fopen(DesFile,"wb");
fseek(fp,0L,SEEK_END);
length=ftell(fp);
rewind(fp);
while(length>0)
{
n=fread(buf,1,1024,fp);
cpyfinish=fwrite(buf,1,n,fw);
length-=cpyfinish;
}
fclose(fw);
fclose(fp);
return 0;
}
int main()
{
CopyFile("a.xml","nnn.xml");
return 0;
}
『貳』 如何實現C語言中復制文件的程序
1 以只讀方式打開第一個文件
2 以寫方式打開第二個文件
3 循環讀取字元,並寫入第二個文件。直到遇到EOF結束。
4 關閉文件。
代碼:
#include<stdio.h>
intmain()
{
FILE*f1,*f2;
intc;
f1=fopen("in.txt","rb");
f2=fopen("out.txt","wb");//將in.txt復制為out.txt;
while((c=fgetc(f1))!=EOF)
fputc(c,f2);
fcloseall();
return0;
}
『叄』 C語言怎麼拷貝和刪除文件
有以下兩種方法可以使用:第一種:1 以讀方式打開文件;2 將文件讀到內存;3 關閉文件;4 以寫方式打開文件;5 將原始數據寫迴文件,寫的時候,跳過要刪除的字元串。第二種:當文件比較大時,全部讀入內存會有可能放不下。這時可以按照以下步驟:1 將原始文件備份成備份文件,可以通過或者系統復制命令實現;2 以寫方式打開原文件;3 以讀方式打開備份文件;4 依次讀備份文件,並寫入原文件,讀的時候跳過要刪除的部分。可以讀後拋棄,也可以使用fseek函數實現;5 關閉兩個文件;6 刪除備份文件。
『肆』 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語言實現文件拷貝
兩種方法:
1. 用c語言的文件操作:讀出文件argv[1]的內容,再把讀出的內容寫入到文件argv[2]中
2. 使用函數system來執行dos中的文件拷貝命令
char command[100]=" ";
strcat(command, argv[1]);
strcat(command," ");
strcat(command,argv[2]);
system( command );
『陸』 C語言中怎樣將兩個文件中內容復制到一個新的文件中
1、打開文件A,B,C
2、讀取A的內容,寫入C
3、讀取B的內容,寫入C
4、關閉文件A,B,C
『柒』 如何用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語言怎麼復制文件
BOOL
CopyFile(LPCTSTR
lpExistingFileName,LPCTSTR
lpNewFileName,BOOL
bFailIfExists
);
說明
復制文件。與vb的file命令相似
返回值
Long,非零表示成功,零表示失敗。會設置GetLastError
參數表
參數
類型及說明
lpExistingFileName
String,源文件名
lpNewFileName
String,目標文件名
bFailIfExists
Long,如果設為TRUE(非零),那麼一旦目標文件已經存在,則函數調用會失敗。否則目標文件被改寫
『玖』 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語言實現文件夾的復制
最簡單的方法就是system(" /s ....")調用,完全用代碼實現也是可以,只是相當的復雜,基本思路是搜索文件夾,對子文件夾進行遞歸,對文件進行復制。