概述
C語言文件輸入和輸出操作的學(xué)習(xí)心得(一)
C語言文件輸入和輸出操作的學(xué)習(xí)心得(二)
C語言文件輸入和輸出操作的學(xué)習(xí)心得(三)
在以上三篇文章中介紹了C語言文件輸入和輸出的一些基本操作窒悔,相信大家閱讀以后會對C語言文件操作的知識有一定的了解。本文將通過一個實(shí)例向大家演示如何運(yùn)用前面三篇文章討論過的函數(shù)坟比。該實(shí)例的目的為通過C語言對一個文本進(jìn)行復(fù)制揍诽,并新建一個文本用來存放復(fù)制的字符刹悴。事不宜遲柜蜈,我們立即上碼狈邑。
實(shí)例
#include <stdio.h>
int copyF(FILE *file);//定義復(fù)制文件的函數(shù)
int main()
{
FILE *pFile;//定義文件指針
int i;
pFile = fopen("test.txt", "r");//打開文件
i = copyF(pFile);//文件進(jìn)行復(fù)制政鼠,返回一個整形數(shù)字
if(i==0)//返回值為0表示文件復(fù)制成功
{
printf("mission completed...\n");
}else if(i==1){//返回值為1表示文件復(fù)制失敗,原文件出錯
printf("mission failed...file is NULL\n");
}else if(i==2){//返回值為2表示文件復(fù)制失敗,新文件出錯
printf("mission failed...copyfile is NULL\n");
}
fclose(pFile);//關(guān)閉文件
return 0;
}
int copyF(FILE *file)
{
char c[32];//定義一個用來儲存字符的數(shù)組
FILE *copyFile;//定義文件指針
copyFile = fopen("copy.txt","w+");//打開文件
if(file == NULL)//文件指針為空時的措施
{
printf("can not open the file");
fclose(file);
return 1;//錯誤返回1
}
if(copyFile == NULL)//文件指針為空時的措施
{
printf("can not open the file");
fclose(copyFile);
return 2;//錯誤返回2
}
while(!feof(file))
{
fgets(c,32,file);//獲取原文件的32個字符
fputs(c,copyFile);//將源文件的32個字符寫進(jìn)新文件
}
fclose(copyFile);//關(guān)閉文件
return 0;
}
說明
復(fù)制文件的基本思路為:首先讀出原文件數(shù)據(jù)岛都,然后將讀出的數(shù)據(jù)寫進(jìn)新的文本中律姨。實(shí)例中定義了一個copyF()函數(shù)實(shí)現(xiàn)復(fù)制功能。該函數(shù)有一個參數(shù)*file臼疫,即需要復(fù)制文件的指針變量择份。并返回一個整形數(shù)值,返回值分別是0烫堤、1荣赶、2,具有不同的信息鸽斟。
在main()函數(shù)中調(diào)用copyF()函數(shù)
int i;
pFile = fopen("test.txt", "r");//打開文件
i = copyF(pFile);//文件進(jìn)行復(fù)制桅狠,返回一個整形數(shù)字
copyF()
原型:int i = copyF(FILE *file)
int copyF(FILE *file)
{
char c[32];//定義一個用來儲存字符的數(shù)組
FILE *copyFile;//定義文件指針
copyFile = fopen("copy.txt","w+");//打開文件
if(file == NULL)//文件指針為空時的措施
{
printf("can not open the file");
fclose(file);
return 1;//錯誤返回1
}
if(copyFile == NULL)//文件指針為空時的措施
{
printf("can not open the file");
fclose(copyFile);
return 2;//錯誤返回2
}
while(!feof(file))
{
fgets(c,32,file);//獲取原文件的32個字符
fputs(c,copyFile);//將源文件的32個字符寫進(jìn)新文件
}
fclose(copyFile);//關(guān)閉文件
return 0;
}
實(shí)現(xiàn)文件復(fù)制的實(shí)例還有很多厦凤,本文提供其中一個實(shí)例作為參考翁脆。如有其他實(shí)例尚镰,歡迎各位朋友前來交流。