fread 读文件问题(csdn)

2023-11-05

http://topic.csdn.net/t/20030912/21/2254341.html

fread   返回的是所有被读取的字节数,假如数目不等于请求的字节数,说明有错误发生或者到达文件结束标志(End   of   File)。  
  下面写了个读取完整文件的程序将功补过:  
  /*   fread   读取大文件样例   */  
  #include   <stdio.h>  
  #include   <stdlib.h>  
   
  int   main   (char   argc,   char   **argv)  
  {  
      char   *   fileName;  
      if   (argc   !=   2)  
          {  
                printf   ("Usage:   a.out   filename./n");  
                exit   (1);  
        }  
      else   {   fileName   =   argv[1];}  
   
      FILE   *   pFile;  
      long   lSize;  
      char   *   buffer;  
   
      pFile   =   fopen   (   fileName,   "rb"   );  
      if   (pFile==NULL)  
          {  
                perror   ("Error   opening   file");  
                exit   (1);  
          }  
   
      //   获取文件大小.  
      fseek   (pFile   ,   0   ,   SEEK_END);  
      lSize   =   ftell   (pFile);  
      printf("File   size   =   %d/n",   lSize);  
      rewind   (pFile);  
   
      //   分配内存以包含整个文件  
      buffer   =   (char*)   malloc   (lSize);  
      if   (buffer   ==   NULL)  
          {  
                perror   ("Couldn't   allocate   memory/n");  
                exit   (2);  
          }  
   
   
      //   拷贝文件到缓冲区  
      long   n;  
      n   =   fread   (buffer,1,lSize,pFile);  
      printf("Read   size   =   %ld/n",   n);  
   
      /***   整个文件被加载到缓冲区.   ***/  
      if   (!ferror   (pFile))  
                printf   ("No   errors   while   reading./n");  
   
      else   perror   ("Some   errors   happened./n");  
   
      //   终止并释放缓冲区  
      fclose   (pFile);  
      free   (buffer);  
      return   0;  
  }  
   
  $   ./read_complete_file   hacker.mpg    
  File   size   =   115115008  
  Read   size   =   115115008  
  No   errors   while   reading.  

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

fread 读文件问题(csdn) 的相关文章

  • 如何读取通过追加行不断更新的文件?

    在我的终端中我正在运行 curl user dhelm 12345 https stream twitter com 1 1 statuses sample json gt raw data txt curl 的输出是实时流式 Twitte
  • 结构体如何存储在内存中?

    我有一个struct iof header在我的代码中 我确定它的宽度是 24 字节 我执行 sizeof iof header 它返回 32 字节宽 问题1为什么是 32 字节宽而不是 24 字节宽 问题2包括其成员在内 结构体如何存储在
  • 使用powershell计算子文件夹中具有特定名称的文件数量

    因此 我开始解决一个问题 我需要知道某个名称的子文件夹中有多少个文件 这些文件在整个目录中重复多次 我想要计算的所有文件夹都具有相同的名称 例如 Main Folder Subfolder Folder I want to count Fo
  • 在 UNIX 中删除相同的文件

    我正在处理大量 30 000 个 大小约为 10MB 的文件 其中一些 我估计 2 实际上是重复的 我只需要为每个重复的对 或三元组 保留一个副本 您能建议我一种有效的方法吗 我正在unix上工作 您可以尝试使用此代码片段在删除之前先获取所
  • 是否可以创建一个包含多页 tiff 文件所有帧的 base64 字符串?

    使用已知的转换方法将多页 tiff 文件转换为 base64 字符串似乎只包含其中的一个页面 我从本地磁盘获取多页 tiff 文件 Image multiPageImage Image FromFile fileName 将其转换为 bas
  • 如何通过双击图标来执行JAVA程序?

    我写了一个java程序 现在我想在没有 IDE Eclipse 等的情况下打开我的控制台 java 应用程序 只需双击桌面上的可执行版本即可 我已将 java 项目导出为 Runnable JAR 文件 但无法打开 当我尝试使用cmd打开应
  • 对 FileList 对象进行排序

    我正在尝试使用新的文件 API 对输入文件进行排序 它返回的列表似乎是不可变的 var x var files e target files FileList object Loop through the FileList and ren
  • 在 C++ 中检查空指针的首选方法是什么?

    选项A if NULL pSomethingColumn Yes we use Yoda conditions if NULL pSomethingColumn Or if pSomethingColumn if pSomethingCol
  • iCloud Drive 内用户选择的文件夹内的垃圾文件

    我的应用程序可在任何用户选择的文件夹内处理用户 txt 文件 创建 更改 删 除 我只是在内部存储书签以访问用户选择的文件夹和文件 现在 在 macOS Catalina 中 当源文件夹位于 iCloud Drive 内时 系统仍然允许我创
  • 当前平台不支持桌面 API

    我遇到过这个错误 java lang UnsupportedOperationException 当前平台不支持桌面 API 我将从我的 java 应用程序中打开一个文件 我用这个方法 Desktop getDesktop open new
  • c 使用 lseek 以相反顺序复制文件

    我已经知道如何从一开始就将一个文件复制到另一个文件 但是我如何修改程序以按相反的顺序复制它 源文件应具有读取访问权限 目标文件应具有读写执行权限 我必须使用文件控制库 例如 FILE A File B should be ABCDEF FE
  • DBNull 怎么会不等于 DBNull

    我有以下代码行 if DBNull Value Equals o o null where o is object o in row ItemArray我不断收到错误 gt Xml type List of xdt untypedAtomi
  • Linux下单个目录下文件过多会怎样?

    如果一个目录中有大约 1 000 000 个单独的文件 大部分大小为 100k 其中没有其他目录和文件 是否会以任何其他可能的方式降低效率或产生缺点 ARG MAX 会对此提出异议 例如 rm rf 在目录中时 会说 参数太多 想要执行某种
  • Java 空值检查

    我有一个thread1 if object null object play 和另一个thread2可以写null into object随时参考 我将同时运行这些线程 我知道thread2可以重写object后参考null检查并会抛出Nu
  • 将文件写入 Web 服务器 - ASP.NET

    我只想将 TextBox 控件的内容写入 Web 服务器目录根目录中的文件 如何指定它 请记住 我正在本地测试这个 它不断地将文件写入我的程序文件 Visual Studio Common IDE目录而不是我的项目目录 这是我假设Web服务
  • 使用绑定和空值命中 Oracle 索引的最佳查询

    我有一个表 该表在多个列上有一个索引 其中许多列可以为空 CREATE UNIQUE INDEX UX MYTABLE A B C D E ON MYTABLE A B C D E 现在 我在 C 代码中尝试检查该表并精确命中索引 对于每个
  • Django 1.6 的静态文件

    我花了一整天但没有任何作用 我在这里看到了至少 20 篇关于同一主题的帖子 它们各不相同 有不同的建议 但没有一个对我有用 使用 Python 2 7 运行 Django 1 6 我正在尝试从 django 教程加载民意调查应用程序的 cs
  • 我的代码哪里有泄漏?

    下面是我的代码 它打开一个 XML 文件 old xml 过滤无效字符并写入另一个 XML 文件 abc xml 最后 我将再次加载 XML abc xml 当执行以下行时 出现异常 表示 xml 文件被另一个进程使用 xDoc Load
  • 重新链接匿名(未链接但打开)文件

    在 Unix 中 可以创建匿名文件的句柄 例如 使用 creat 创建并打开它 然后使用 unlink 删除目录链接 留下一个带有 inode 和存储的文件 但没有可能的方法重新打开它 此类文件通常用作临时文件 通常这就是 tmpfile
  • java中如何找到class文件的包

    我正在编写一个使用 class 文件的 java 程序 我希望能够读取文件系统上的 class 文件 使用 InputStream 并确定它所在的包 该 class 文件可能不在一个好的包目录结构中 它可能位于某个随机位置 我怎样才能做到这

随机推荐

  • ZooKeeper集群环境搭建

    大数据学习记录篇 持续更新中 个人主页 beixi 本文章收录于专栏 点击传送 大数据学习 持续更新中 感谢各位前辈朋友们支持学习 文章目录 1 ZooKeeper集群环境介绍 2 搭建环境准备 3 搭建步骤 1 ZooKeeper集群环境
  • 网络安全事件应急响应实战

    一 应急响应 1 Window入侵排查 当企业发生黑客入侵 系统崩溃或其它影响业务正常运行的安全事件时 急需第一时间进行处理 使企业的网络信息系统在最短时间内恢复正常工作 进一步查找入侵来源 还原入侵事故过程 同时给出解决方案与防范措施 为
  • hyper-v开启与关闭

    1 控制面板 2 服务 以管理员身份运行msconfig 3 cmd命令 以管理员运行 开启 上次关闭docker服务时 重新启动虚拟化技术执行了上面个两个步骤 未执行下面命令 检查了好久查了网上的资料才想起来 bcdedit set hy
  • java 遍历map 方法 集合 五种的方法

    package com jackey topic import java util ArrayList import java util HashMap import java util Iterator import java util
  • git如何克隆代码

    首先你要去官网安装 Git Downloads 下载好了一直下一步就行 找到一个装文件的文件夹右击 点击git bash here 然后 git clone 加上git上的网址 回车就可以下载了 希望有帮助到你
  • crm服务器 系统盘,crm搭建云服务器

    crm搭建云服务器 内容精选 换一换 购买多台云服务器时 有以下两种方式设置有序的云服务器名称 自动排序 购买多台云服务器时自动按序增加4位数字后缀 正则排序 按照name prefix begin number bits name suf
  • Windows系统缺失crypt32.dll文件导致程序无法运行解决办法

    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题 如果是新手第一时间会认为是软件或游戏出错了 其实并不是这样 其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库 这时你可以下载这个crypt32
  • JDBC的两种实现方法及区别

    文章目录 toc JDBC 一 JDBC简介 二 通过DriverManager实现JDBC 三 通过DataSource实现JDBC 四 DataSource和DriverManager的区别 JDBC 一 JDBC简介 JDBC Jav
  • JPA最终对象转换为sql的位置

    这里以spring data jpa 3 1 1版本为例 Jpa最终是采用的hibernate进行数据库查询 因此其最终由对象转为sql的语句可以在 类ConcreteSqmSelectQueryPlan gt 方法listInterpre
  • openMPI在Linux环境下的安装和部署

    Linux环境背景 CentOS7 安装步骤 进入官网openmp org 下载压缩包openmpi 4 1 4 tar gz 将openmpi 4 1 4 tar gz放到 opt文件夹内 解压tar zxvf openmpi 4 1 4
  • vscode ~~出现黄色波浪线,解决办法~

  • SPSS(八)logistic回归(图文+数据集)

    SPSS 八 logistic回归 我们之前的线性回归也好 线性回归衍生方法也好 非线性回归也好 因变量的类型都是连续性的 假如因变量的类型是分类的呢 logistic回归针对的是二分类的因变量 logistic回归 基于线性回归模型发展而
  • VS2010每次调试都出现“此项目已经过期”提示

    问题描述 最近因为项目需要 开发平台从VS2005切换成了VS2010 把一些老项目也转换到VS2010平台 因为是从低到高升级 微软还是做了很多兼容 基本上可以无缝切换 编译调试也基本正常 但是发现有些项目 尤其是比较大的项目 刚刚编译完
  • 1.linux安装oracle12c及测试连接(详细讲解)

    1 虚拟机配置 系统Centos7 6 CPU 4H 内存 4G 硬盘 128G GUI 有 2 安装前准备 2 1配置静态IP 我们是安装服务 一个服务主机IP地址不应该的变化的 所以设置为静态 vim etc sysconfig net
  • 算法练习之反转链表

    比较久没有写算法题了 还是应该复习回顾一下 这次用新学的 rust 语言来解决算法问题 个人认为学习算法题目重要的不是解法 而是解法背后的思想 要从每一道题目中学习到解决问题的思路 定义一个函数 输入一个链表的头节点 反转该链表并输出反转后
  • Cortex-M3与Aurix的堆栈

    1 在ARM Cortex M3架构中 堆栈通常由两个寄存器来管理 主堆栈指针 MSP 和进程堆栈指针 PSP 1 1 MSP是处理器的默认堆栈指针 用于保存中断处理程序的现场 当芯片复位或发生中断时 处理器会自动将MSP的值保存到堆栈中
  • javascript之我见

    首先 须知JavaScript之出处 乃ECMAScript之变体也 诞生于1995年 为Sun Microsystems所开发 其初衷在于使得网页具有动态交互功能 诸君须知 时乃互联网方兴未艾之际 JavaScript之出 犹如孔子之出
  • 机器学习:伦敦出租车示例(数据分析,数据处理)

    原地址 http ju outofmemory cn entry 299056 记得有一个出租车对于数据分析是很好的参考范例 找找转发过来以后参考 在纽约 出租车分为两类 黄色和绿色 黄色出租 Yellow TAXI 车可以在纽约五大区 布
  • 硬件系统工程师宝典(38)-----常用接口之视频接口的电路设计

    各位同学大家好 欢迎继续做客电子工程学习圈 今天我们继续来讲这本书 硬件系统工程师宝典 上篇我们介绍了一些常用的接口带EMC保护的电路设计 有AC24V AC110 220V AV接口 CAN接口 DC12V DC24V DC48V接口 今
  • fread 读文件问题(csdn)

    http topic csdn net t 20030912 21 2254341 html fread 返回的是所有被读取的字节数 假如数目不等于请求的字节数 说明有错误发生或者到达文件结束标志 End of File 下面写了个读取完整