本文主要是介绍linux 标准IO读写 将一个文件的内容拷贝到另一个文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
fopen以只读的方式打开一个文件,fopen创建并打开另一个文件,利用fgets将每一行的内容取出来处理一下放到另一个文件中。
运行前:
运行后:
可以看到一下处理了33个.c文件,生成了33个.h文件。每个文件每行内容将17、18、37、38、57、58、77、78位的0变成了1。
代码如下:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h> /* See NOTES */#define NUM_FLAG 33int main(int argc, char **argv)
{FILE *fp;FILE *fp1;char temp[512];int result;char *p;int len;char name1[10];char name2[10];int i;for (i = 1; i < NUM_FLAG+1; i++){sprintf(name1,"%d.c", i);sprintf(name2,"%d.h", i);printf("%s ===> %s\n", name1, name2);if ((fp = fopen(name1, "r")) == NULL){perror("fopen");return -1;}if ((fp1 = fopen(name2, "w+")) == NULL){perror("fopen");return -1;}while (fgets(temp, 512, fp) != NULL){if (strncmp(temp, "0X", 2) == 0){temp[17] = 'f';temp[18] = 'f';temp[37] = 'f';temp[38] = 'f';temp[57] = 'f';temp[58] = 'f';temp[77] = 'f';temp[78] = 'f';} fprintf(fp1,"%s",temp);}fclose(fp);fclose(fp1);}return 0;
}
这篇关于linux 标准IO读写 将一个文件的内容拷贝到另一个文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!