700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > linux C语言 对本地文件进行读写操作

linux C语言 对本地文件进行读写操作

时间:2020-01-03 11:21:20

相关推荐

linux C语言 对本地文件进行读写操作

linux C语言 对本地文件进行最简单读写操作

读取json文件保存json文件

读取json文件

对本地以cjson格式保存的文本进行读取

/* 读取json文件 */const char* ReadJson(const char* filename){//打开JSON数据文件int fd = open(filename,O_RDWR) ;if(fd < 0){log_e("open json_file erroe");close(fd);return NULL ;}//读取文件中的数据 char buf[MAX_TASKLIST_SIZE]={0};int ret = read(fd, buf, sizeof(buf));if(ret == CT_EERROR){log_e("read json_file error") ;close(fd);return NULL ;}//关闭文件close(fd);return buf;`在这里插入代码片`}//获取本地文本的json内容taskIdList *ReadTaskIdList(char * fileName){printf("----ReadTaskIdList");taskIdList * tasklist = NULL;const char* data = ReadJson(fileName);if(data == NULL){log_e("ReadJson error") ;return NULL;}cJSON* root = cJSON_Parse(data);if(root == NULL){log_e("parse error") ;return NULL ;}#if 1//读取json内容//根目录 cJSON *tasks_item = cJSON_GetObjectItem(root,"tasks");//获得tasks元素if (tasks_item == NULL){log_e(" read tasks error") ;goto __ERROR_RETURN ;}#endif__ERROR_RETURN :cJSON_Delete(root) ;return tasklist;}

保存json文件

将json数据保存到文本

/* 保存 普通字符串 到文本文件 */void SaveText(const char* text, const char* name){if(name == NULL){log_e("save failed") ;return ;}FILE* fp = fopen(name, "w");if (NULL != fp){fwrite(text, strlen(text), 1, fp);fclose(fp);log_e("save tasklist.json ok!");}else log_e("save tasklist.json error!");}/* 将文本处理成json格式后保存 */// void SaveTextToJSON(const char *text, const char* name)void SaveTextToJSON(cJSON* json, const char* name){if (json == NULL) {log_e("json is NULL");return NULL;}char* buff = cJSON_Print(json);SaveText(buff, name);cJSON_Delete(json);free(buff);}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。