欢迎来到代码驿站!

C代码

当前位置:首页 > 软件编程 > C代码

c语言文件读写示例(c语言文件操作)

时间:2020-11-26 21:41:35|栏目:C代码|点击:

方法:

复制代码 代码如下:

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("%s\n", "----------------Begin---------------");
    char* filename = "/tmp/tmp.txt";
    file_put_contents(filename, "https://www.jb51.net");
    char* data = file_get_contents(filename);
    printf("Fd::  %s\n", data);
    printf("%s\n", "----------------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("%s\n", "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);
}

上一篇:浅析string类字符串和C风格字符串之间的区别

栏    目:C代码

下一篇:C语言宏定义结合全局变量的方法实现单片机串口透传模式

本文标题:c语言文件读写示例(c语言文件操作)

本文地址:http://www.codeinn.net/misctech/26328.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有