C语言的文件读写简单程序

这两天由于一些事情,看书进度慢了,今天正在看C语言的文件操作,简单做了一个文件读写程序。只能进行简单的读,写,追加写操作。

程序如下

#include <stdio.h>
#include <string.h>
int main(int argc, char** argv)
{
	/*File open and test*/
	FILE *fp;
	char ch[64];
	/*打开文件*/
	if((fp=fopen(argv[2],argv[1]))==NULL)
	{
		printf("文件打开出错,请检查文件是否存在n");
		return -1;
	}
	else printf("文件已经打开。");
	/*读取文件*/
	if(*argv[1]=='r')
	{
		printf("文件内容是:n");
		printf("-------------------------------------------n");
		while(!feof(fp))//判定文件是否结尾
		{
			if(fgets(ch,64,fp)!=NULL)
			printf("%s",ch);
		}
	}
	/*写文件*/
	if(*argv[1]=='w')
	{
		printf("请输入内容,关闭文件请直接回车n");
		printf("-------------------------------------------n");
		while(strlen(fgets(ch,64,stdin))>1)
		{
			fputs(ch,fp);
		}
	}
	/*文件追加*/
	if(*argv[1]=='a')
	{
		printf("请输入追加内容,关闭文件请直接回车n");
		printf("-------------------------------------------n");
		while(strlen(fgets(ch,64,stdin))>1)
		{
			fputs(ch,fp);
		}
	}
	/*关闭文件*/
	if(fclose(fp)!=0)
	{
		printf("-------------------------------------------n");
		printf("文件关闭出错n");
		return -1;
	}
	else
	{
		printf("-------------------------------------------n");
		printf("文件以关闭n");
		return 0;
	}
}

使用方法,如改程序为 file.c 。则可读写文件为 text.txt 。读取该文件的命令为:

./file r text.txt

用写文件形式,会覆盖原来的内容,命令为:

./file w text.txt

用追加文件形式,会在原来内容后面追加写入字符,命令为:

./file a text.txt

接下来,还得继续学习C变成,希望自己早日可以在linux下面写出自己的程序。

{ 发表评论? }

  1. 蓝天下

    楼主可以看看谭浩强的那本C语言,讲的很详细
    还有刘汝佳的算法竞赛的书,讲了很多C语言应用技巧

  2. 蓝天下

    打顺手了,不是楼主,是博主。。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>