1. 字符读写函数  :fgetc和fputc
  2. 字符串读写函数:fgets和fputs
  3. 数据块读写函数:freed和fwrite
  4. 格式化读写函数:fscanf和fprinf
 
1.字符读写:
  fgetc函数的功能是从指定的文件中读一个字符,函数调用的形式为:
      字符变量=fgetc(文件指针);
  fputc函数的功能是把一个字符写入指定的文件中,函数调用的形式为:
      fputc(字符量,文件指针); 
 
2.字符串读写
  读字符串函数fgets 
    函数的功能是从指定的文件中读一个字符串到字符数组中,函数调用的形式为:
       fgets(字符数组名,n,文件指针);
  写字符串函数fputs
    fputs函数的功能是向指定的文件写入一个字符串,其调用形式为:
       fputs(字符串,文件指针);
 
 3.数据块读写
  读数据块函数调用的一般形式为:
        fread(buffer,size,count,fp);
  写数据块函数调用的一般形式为:
        fwrite(buffer,size,count,fp);
 
 4.格式化读写
  fscanf函数,fprintf函数与前面使用的scanf和printf 函数的功能相似,都是格式化读写函数。两者的区别在于fscanf函数和fprintf函数的读写对象不是键盘和显示器,而是磁盘文件。
  这两个函数的调用格式为:
      fscanf(文件指针,格式字符串,输入表列);
      fprintf(文件指针,格式字符串,输出表列);
 
 
 
文件定位
 
  移动文件内部位置指针的函数主要有两个,即 rewind 函数和fseek函数。

  rewind函数前面已多次使用过,其调用形式为:
      rewind(文件指针);
    它的功能是把文件内部的位置指针移到文件首。

  下面主要介绍fseek函数。fseek函数用来移动文件内部位置指针,其调用形式为:
      fseek(文件指针,位移量,起始点);
  其中:
      “文件指针”指向被移动的文件。
       “位移量”表示移动的字节数,要求位移量是long型数据,以便在文件长度大于64KB 时不会出错。当用常量表示位移量时,要求加后缀“L”。
       “起始点”表示从何处开始计算位移量,规定的起始点有三种:文件首,当前位置和文件尾。

    其表示方法如下表。

起始点 表示符号 数字表示
文件首 SEEK_SET 0
当前位置 SEEK_CUR 1
文件末尾 SEEK_END 2
 

    例如:
        fseek(fp,100L,0);
    其意义是把位置指针移到离文件首100个字节处。

    还要说明的是fseek函数一般用于二进制文件。在文本文件中由于要进行转换,故往往计算的位置会出现错误。

 
 
 
C语言中常用的文件检测函数有以下几个。

文件结束检测函数feof函数

  调用格式:
     feof(文件指针);
    功能:判断文件是否处于文件结束位置,如文件结束,则返回值为1,否则为0。

 
  读写文件出错检测函数

    ferror函数调用格式:
        ferror(文件指针); 
     功能:检查文件在用各种输入输出函数进行读写时是否出错。如ferror返回值为0表示未出错,否则表示有错。

文件出错标志和文件结束标志置0函数

  clearerr函数调用格式:
        clearerr(文件指针); 
      功能:本函数用于清除出错标志和文件结束标志,使它们为0值。

c语言对于文本的基本操作的更多相关文章

  1. [日常] Go语言圣经-文本和HTML模板习题

    Go语言圣经-文本和HTML模板 练习 4.14: 创建一个web服务器,查询一次GitHub,然后生成BUG报告.里程碑和对应的用户信息. 1.查看下文档godoc net/http |grep H ...

  2. R语言:文本(字符串)处理与正则表达式

    R语言:文本(字符串)处理与正则表达式 (2014-03-27 16:40:44) 转载▼ 标签: 教育 分类: R 处理文本是每一种计算机语言都应该具备的功能,但不是每一种语言都侧重于处理文本.R语 ...

  3. C语言采用文本方式和二进制方式打开文件的区别分析

    稍微了解C程序设计的人都知道,文本文件和二进制文件在计算机上面都是以0,1存储的,那么两者怎么还存在差别呢?对于编程人员来说,文本文件和二进制文件就是一个声明,指明了你应该以什么方式(文本方式/二进制 ...

  4. iOS中使用Localizable.strings适配App在不同语言下文本的显示

    iOS开发中,若是使用xib或storyboard搭建界面视图,视图中固定显示的文本内容可以用localized添加不同语言适配.但是在实际中会有动态加载的文本,这些文字的适配就需要NSLocaliz ...

  5. C语言实现二叉树的基本操作

    二叉树是一种非常重要的数据结构.本文总结了二叉树的常见操作:二叉树的构建,查找,删除,二叉树的遍历(包括前序遍历.中序遍历.后序遍历.层次遍历),二叉搜索树的构造等. 1. 二叉树的构建 二叉树的基本 ...

  6. WPF 语言格式化文本控件

    前言 本章讲述正确添加语言资源的方式,以及一段语言资源的多种样式显示. 例如:“@Winter,你好!感谢已使用软件 800 天!” 在添加如上多语言资源项时,“XX,你好!感谢已使用软件 X 天!” ...

  7. Go语言基础之16--Mysql基本操作

    一.Mysql驱动及数据库连接 1.1 Golang中的Mysql驱动 A. https://github.com/go-sql-driver/mysql B. Go本身不提供具体数据库驱动,只提供驱 ...

  8. C语言对文件的基本操作

    在C语言中,对于文件的操作是利用FILE结构体进行的. 几个常用的操作文件函数简介 1:打开文件 FILE *fopen( const char *filename, const char *mode ...

  9. C语言-字符串文本串联

    要形成包含多个行的字符串,可以串联两个字符串. 为此,请键入正斜杠,然后按 return 键. 反斜杠导致编译器忽略以下换行符. 例如,字符串     "Long strings can b ...

随机推荐

  1. HDU3047 Zjnu Stadium 带权并查集

    转:http://blog.csdn.net/shuangde800/article/details/7983965 #include <cstdio> #include <cstr ...

  2. [Raobin] Ext.net 页面由于CMB的store和对图像同时执行,所以不会触发非空验证 所以会在后台直接调Js去验证

    X.Call("valid", vm.ID_EDIT_FORM); x.Call("前台的js的方法名称"," 参数为集合");

  3. cefSharp 设置运行时系统语言

    在使用用CefSharp使用过程中,系统用了很多第三方控件.这些控件很多能够根据浏览器设置的语言来进行控件展示对应语言. 在cefSharp可以设置系统语言,代码如下: CefSharp.Settin ...

  4. as3+java+mysql(mybatis) 数据自动工具(三)

    介绍一下数据类配置,该数据类配置主要用于需要将数据库 mysql 数据转换成 java 对象,再转换为 as3 对象的数据类 配置文件为 xml 格式. <objects> <obj ...

  5. node系列3

    网络操作 通过NodeJS,除了可以编写一些服务端程序来协助前端开发和测试外,还能够学习一些HTTP协议与Socket协议的相关知识 开门红 使用NodeJS内置的http模块简单实现一个HTTP服务 ...

  6. leetcode—pascal triangle

    1.题目描述 Given numRows, generate the first numRows of Pascal's triangle.   For example, given numRows ...

  7. IOS网络多线程-GCD

    Grand Central Dispatch (GCD)是Apple开发的一个多核编程的解决方法. dispatch queue分成以下三种: 1)运行在主线程的Main queue,通过dispat ...

  8. win7下禁用ctrl alt del +上下左右键

    1.控制面板 2.屏幕分辨率 3.高级设置 4.英特尔图形和媒体控制面板 5.图形属性 6.选项和支持 7.快捷键管理器 8.去掉启动前的勾

  9. Ejabberd2:安装和操作指南(centos yum 安装ejabberd)

    (1)首先安装EPEL Repository     ## RHEL/CentOS 6 32-Bit ##  # wget http://download.fedoraproject.org/pub/ ...

  10. 3D案例,导航,导航升级版

    /*****************************百度钱包旋转变内容******************************/ <!DOCTYPE html> <htm ...