使用fopen函数打开文件,用fseek函数将文件位置调整到文件末尾,然后用fwrite函数写入数据即可。下面的示例代码,向1.txt的文件中追加hello world的字符串。
#include <stdio.h>
#include <string.h>
int main()
{
FILE *fp = fopen("1.txt", "a+")
if (fp==0) { printf("can't open file\n")return 0}
fseek(fp, 0, SEEK_END)
char sz_add[] = "hello world\n"
fwrite(sz_add, strlen(sz_add), 1, fp)
fclose(fp)
return 0
}
不需要打开2次文件的吧?只需要用"a+"的方式就可以了:这个的作用是没有文件就新建一个,有了就追加数据,一般打日志都是这么做的...int ErrLog( char*caMsg )
{
charcaFileName[20]
FILE*fp = NULL
memset( caFileName, 0x00, sizeof( caFileName) )
sprintf( caFileName, "./%s", "mylog.log")
fp = fopen( caFileName, "a+" )
if( fp == NULL )
{
return FAILED
}
fprintf( fp, "%s\n", caMsg)
fclose( fp)
return 0
}
上面的是我的一个打印日志的函数,当然很简单...不过打开文件和追加的方式都已经有了...你可以比照做下
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)