#import

// 判断文件是否存在

bool file_exists(const char *filename){

return access(filename, 0) == 0;

}

//获取文件大小方法1

long file_size(const char *file){

long length = -1;

FILE *fp = fopen(file, "rb+");

if (fp == NULL) {

return length;

}

fseek(fp, 0, SEEK_END);

length = ftell(fp);

fclose(fp);

return length;

}

//获取文件大小方法2

long get_file_size(const char *file){

long length = -1;

struct stat statbuff;

if(stat(file, &statbuff) < 0){

return length;

}else{

length = statbuff.st_size;

}

return length;

}

//字符串连接

char *str_cat(char *str, char *str2){

long len = strlen(str) + strlen(str2);

char *s = (char *)malloc(sizeof(char) * len);

strcpy(s, str);

strcat(s, str2);

return s;

}

//文件读取

char *file_get_contents(const char *filename){

FILE *fp;

size_t size = 1024, n = 0, count = 0, sz = sizeof(char);

char *data = (char *)malloc(sizeof(char) * size);

if(file_exists(filename)){

fp = fopen(filename, "r+");

if(fp){

do{

if(count > 0){

data = realloc(data, (size + count) * sz);

}

n = fread(data + count, sz, size, fp);

if(n < 0){

free(data);

data = NULL;

}

count += n;

}while(n > 0);

fclose(fp);

if(data){

if (0 == (count + sz) % 512){//几率很小的溢出

data = realloc(data, count + sz);

}

data[count] = '\0';

}

return data;

}

}

return NULL;

}

c语言如何在读文件前判断文件大小,c语言获取文件大小,判断文件是否存在相关推荐

  1. python读取文件前30个字符_Python 批量读取文件中指定字符的实现

    1.背景 从指定的NLP生成的文件中读取指定的字符. 2.待读取文件 是以":"作为分隔符的数据,每一行以回车结束.此文件为XXX.train 3.读取每一句中的汉字 ... fi ...

  2. C语言文件操作 fopen, fclose, mkdir(打开关闭文件,建文件夹,判断文件是否存在可读或可写)

    1.建文件夹 int _mkdir(const char *path,mode_t mode); 函数名: _mkdir 功 能: 建立一个目录 用 法: int _mkdir( const char ...

  3. 易语言FileSystemObject通过FSO对象创建删除写入打开移动复制判断文件

    Scripting.FileSystemObject 为 IIS 内置组件,用于操作磁盘.文件夹或文本文件,通常简写为FSO,在ASP时代,对它的调用操控较多,其实易语言通过对象这个类也可以完全实现, ...

  4. C语言按行读文件与读文件中每一个字符

    这里写自定义目录标题 1.按行读取文件,分别获得文件中的每一行. 2.读取文件中的每一个字符并写入字符串数组. 注意: 1.按行读取文件,分别获得文件中的每一行. char Buffer[100]; ...

  5. 这篇文章会让你熟悉文件的各种操作,让你对文件的认识更加深入【c语言】

    文章目录 为什么使用文件 什么是文件 文件名 文件的打开和关闭 文件指针 文件的顺序读写 fgetc fputc fgets fprintf fscanf fwrite fread 对比一组函数 sp ...

  6. python sorted下标_全!Python基础之原生数据类型、判断和循环、函数和文件操作合集...

    长文预警! Python基础系列会将基础内容大致分为三到五个板块,每块着重讲一方面,知识不会很难,主要是以小例子的形式解读,如果你已经入门Python,希望可以帮你温习一下:如果你想入门Python, ...

  7. python中遍历结构可以是哪些数据类型_全!Python基础之原生数据类型、判断和循环、函数和文件操作合集...

    长文预警! Python基础系列会将基础内容大致分为三到五个板块,每块着重讲一方面,知识不会很难,主要是以小例子的形式解读,如果你已经入门Python,希望可以帮你温习一下:如果你想入门Python, ...

  8. SpringBoot 文件上传 通过Content-Type和文件头判断文件类型

    SpringBoot 文件上传 通过Content-Type和文件头判断文件类型 一.关于MIME MIME的全称是Multipurpose Internet Mail Extensions,即多用途 ...

  9. 电脑故障维修判断指导大全(联想内部文件)

    电脑故障维修判断指导大全(联想内部文件) 前 言: 本<电脑故障维修判断指导大全>中所有编辑文章版权归原作者和本站所有.一切商业媒体如要引用本教程内容请与本站联系!网上非盈利媒体引用本教程 ...

最新文章

  1. mysql 如何修改wait_timeout,interactive_timeout ,和 session ,global 有什么关系
  2. STM32的USB相关资料(转载)
  3. sns.distplot图例标注怎么添加_百度地图API图标、文本、图例与连线
  4. 使用xdebug+webgrind分析php性能
  5. Android----paint触摸轨迹监听
  6. ffmpeg 转换flv压缩大小_ffmpeg转换参数和压缩输出大小的比率 参考 最新版本FFMPEG...
  7. C# 8 新提案让泛型 Attribute 成为现实
  8. elasticsearch集群搭建-windows
  9. 天池实验室-Task03-Python入门(下)
  10. 字符串存入xls matlab,数组 – MATLAB:将字符串写入Excel
  11. c++编写手机小游戏代码_手机也能编程?盘点这6个可以用手机编程的App!快收藏!...
  12. linux内核奇遇记之md源代码解读之四
  13. UG NX8.0安装教程
  14. 网页动态背景:随鼠标线条变动
  15. IR2104半桥驱动电路
  16. 实型变量(浮点型变量)、字符型数据、字符串常量(变量)、字符常量(变量)
  17. linux c led 驱动程序,uclinux简单LED驱动程序
  18. Some things about RESUME
  19. 两年数模路,一点小感触…
  20. 手把手教你编译RS GIS开源库(一)编译ECW3.3库

热门文章

  1. uniapp 滑块封装
  2. Session是什么东西
  3. 无法打开项目文件: .csproj,此安装不支持该项目类型,怎么解决?
  4. 苹果cmsv10高端大气模板
  5. react hooks中如何关闭setInterval的定时器
  6. PHP多线程异步请求HTTP
  7. 卢氏黎明计算机学校,卢氏老井
  8. c语言中assert函数,assert()函数用法总结
  9. IDEA快捷键大全 + 动图演示,效率真高
  10. jquery点击图片变大,再点击回复如初