#include <stdlib.h>
int main()
{
FILE *fd
char buf[1024]
char e[10]
int i,j=3
if ((fd = fopen("file1.dat","ab+")) == NULL) //r是打开一个用于读取的文本文件.rb+是打开一个文件,并在末尾追加数据
{
printf("ERROR\n")
return 0
}
else
{
fread(buf,1024,1,fd) //读取源文件的内容,我写的file1.dat的文件内容为三个字符
buf[j] = '\0'
printf("原文件内容为%s\n",buf)
printf("请输入你要添加的数据\n")
gets(e) //你要加在源文件后面的内容,键盘输入
fwrite(e,strlen(e),1,fd) //把你输入的字符串加在文件后面
j+=strlen(e) //文件内容增加
fseek(fd,0,0) //把文件的标号偏移到开头
fread(buf,1024,1,fd) //读取写入后的文件内容
buf[j] = '\0'
printf("写入后的文件为%s\n",buf)
}
}
r是打开只读文件.
这是我改的,可以读写
对于文件使用方式有以下几点说明:1)文件使用方式由r,w,a,t,b,+六个字符拼成,各字符的含义是:
r(read):读
w(write): 写
+: 读和写
a(append): 追加
t(text):文本文件,可省略不写
b(banary): 二进制文件
2)用“r”打开一个文件时,该文件必须已经存在,且只能从该文件读出。
3)用“w”打开的文件只能向该文件写入。若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件。
4)若要向一个已存在的文件追加新的信息,只能用“a”方式打开文件。但此时该文件必须是存在的,否则将会出错。
5)在打开一个文件时,如果出错,fopen将返回一个空指针值NULL。在程序中可以用这一信息来判别是否完成打开文件的工作,并作相应的处理。