最近遇见一个项目需要将10左右的文件全部读取出来,写入字符串,拼成报文,发送给第三方。记录一下
#include "stdio.h"
#include "stdlib.h"
int main( void )
{
FILE *fp;
fp = fopen("/home/tqk/tqk1/123.txt" , "r");
/*指针位置移动到文件末尾*/
fseek( fp , 0 , SEEK_END );
int file_size;
/*读取文件大小*/
file_size = ftell( fp );
printf( "%d" , file_size );
char *tmp;
/*移动到文件开始位置*/
fseek( fp , 0 , SEEK_SET);
/*申请动态内存*/
tmp = (char *)malloc( file_size * sizeof( char ) );
fread( tmp , file_size , sizeof(char) , fp);
printf("%s" , tmp );
free(tmp);
fclose(fp);
return 0;
}
在linux系统下 gcc -c file.c gcc -o file.o 运行 ./a.out 就可以了
运行结果: