c语言文件读写示例(c语言文件操作)_C语言教程-查字典教程网
c语言文件读写示例(c语言文件操作)
c语言文件读写示例(c语言文件操作)
发布时间:2016-12-28 来源:查字典编辑
摘要:方法:复制代码代码如下:longfilesize(char*filename);char*file_get_contents(char*fi...

方法:

复制代码 代码如下:

long filesize(char* filename);

char* file_get_contents(char* filename);

void file_put_contents(char* filename, char* data);

示例:

复制代码 代码如下:

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

long filesize(char* filename);

char* file_get_contents(char* filename);

void file_put_contents(char* filename, char* data);

int main() {

printf("%sn", "----------------Begin---------------");

char* filename = "/tmp/tmp.txt";

file_put_contents(filename, "http://www.jb51.net");

char* data = file_get_contents(filename);

printf("Fd:: %sn", data);

printf("%sn", "----------------End-----------------");

return 0;

}

long filesize(char* filename) {

long length;

FILE* stream = fopen(filename, "rb");

if(!stream) return 0L;

fseek(stream, 0L, SEEK_END);

length = ftell(stream);

fclose(stream);

return length;

}

char* file_get_contents(char* filename) {

FILE* fp = fopen(filename, "rb");

if(!fp) {

printf("%sn", "The file can not be opened.");

exit(0);

}

long length = filesize(filename);

char* buffer = (char*) malloc(length);

char buf[1024];

memset(buffer, 0x00, sizeof(buffer));

fseek(fp, 0L, SEEK_SET);

while(fgets(buf, 1024, fp) != NULL)

strcat (buffer, buf);

fclose(fp);

return buffer;

}

void file_put_contents(char* filename, char* data) {

FILE* fp = fopen(filename, "w+");

if(!fp) {

printf("The file can not be opened.n");

exit(1);

}

fputs(data, fp);

fclose(fp);

}

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新C语言学习
    热门C语言学习
    编程开发子分类