c語(yǔ)言文件讀寫(xiě)示例(c語(yǔ)言文件操作)
更新時(shí)間:2014年02月16日 15:44:53 作者:
這篇文章主要介紹了c語(yǔ)言文件讀寫(xiě)示例(c語(yǔ)言文件操作),需要的朋友可以參考下
方法:
復(fù)制代碼 代碼如下:
long filesize(char* filename);
char* file_get_contents(char* filename);
void file_put_contents(char* filename, char* data);
示例:
復(fù)制代碼 代碼如下:
#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, "http://m.fzitv.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);
}
相關(guān)文章
C++用指針變量作為函數(shù)的參數(shù)接受數(shù)組的值的問(wèn)題詳細(xì)總結(jié)
以下是對(duì)C++中用指針變量作為函數(shù)的參數(shù)接受數(shù)組的值的問(wèn)題進(jìn)行了詳細(xì)的總結(jié)介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2013-10-10
C語(yǔ)言中關(guān)于庫(kù)函數(shù) qsort 的模擬實(shí)現(xiàn)過(guò)程
庫(kù)函數(shù)的模擬實(shí)現(xiàn)有利于我們?nèi)ド钊肓私膺@個(gè)函數(shù)內(nèi)部是怎樣實(shí)現(xiàn)的,以及學(xué)習(xí)它的算法,使我們更加了解這個(gè)函數(shù)該怎樣去使用,接下來(lái)我將詳細(xì)的介紹qsort的應(yīng)用及用法,并且用代碼模擬實(shí)現(xiàn)它們的功能2021-09-09
C++生成隨機(jī)數(shù)的實(shí)現(xiàn)代碼
這篇文章主要介紹了C++生成隨機(jī)數(shù)的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
虛函數(shù)表-C++多態(tài)的實(shí)現(xiàn)原理解析
這篇文章主要介紹了虛函數(shù)表-C++多態(tài)的實(shí)現(xiàn)原理,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02
C語(yǔ)言入門(mén)篇--初識(shí)指針和指針變量
本篇文章是基礎(chǔ)篇,適合c語(yǔ)言剛?cè)腴T(mén)的朋友,本文對(duì)初識(shí)c語(yǔ)言的指針和指針變量做了簡(jiǎn)單的分析,幫助大家快速入門(mén)c語(yǔ)言的世界,更好的理解c語(yǔ)言2021-08-08

