C语言 文件操作11--文件函数再讲 fseek()和ftell()
//文件函数再讲
//fseek(),ftell(),
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h> void main(){
//定义文件路径
char *path = "E:\\Look\\b1.txt";//仅支持window
char *path1 = "E:/Look/b1.txt";//支持window和linux
//定义文件指针
FILE *pf = NULL;
//以读写方式打开文件
pf = fopen(path1,"r+");
//判断文件是否打开成功
if (pf==NULL)
{
printf("文件打开失败! 文件路径是%s\n",path1);
} //int fseek(FILE *stream, long offset, int origin);
//第一个参数stream为文件指针
//第二个参数offset为偏移量,正数表示正向偏移,负数表示负向偏移
//第三个参数origin设定从文件的哪里开始偏移, 可能取值为:SEEK_CUR、 SEEK_END 或 SEEK_SET
//SEEK_SET: 文件开头
//SEEK_CUR: 当前位置
//SEEK_END: 文件结尾
//其中SEEK_SET, SEEK_CUR和SEEK_END依次为0,1和2.
//简言之:
//fseek(fp, 100L, 0); 把stream指针移动到离文件开头100字节处;
//fseek(fp, 100L, 1); 把stream指针移动到离文件当前位置100字节处;
//fseek(fp, -100L, 2); 把stream指针退回到离文件结尾100字节处。 char buf[] = {};
fgets(buf, , pf);
printf("输出结果%s\n", buf);
//将文件指针移动到文件末尾
fseek(pf, 0L, SEEK_END);
//计算出文件指针偏移量(本质上就是文件的大小)
int num = ftell(pf);
//函数名:ftell
//函数原型:long ftell(FILE *stream);
//函数功能
//用于得到文件位置指针当前位置相对于文件首的偏移字节数。(使用fseek函数后再调用函数ftell()就能非常容易地确定文件的当前位置。)
//约束条件
//因为ftell返回long型,根据long型的取值范围 - 231~231 - 1( - 2147483648~2147483647),故对大于2.1G的文件进行操作时出错。
printf("文件的大小%d个字节\n", num);
//关闭文件
if (pf!=NULL)
{
fclose(pf);
} system("pause");
}
C语言 文件操作11--文件函数再讲 fseek()和ftell()的更多相关文章
- Python基础之字符编码,文件操作流与函数
一.字符编码 1.字符编码的发展史 阶段一:现代计算机起源于美国,最早诞生也是基于英文考虑的ASCII ASCII:一个Bytes代表一个字符(英文字符/键盘上的所有其他字符),1Bytes=8bit ...
- Python基本语法_文件操作_读写函数详解
目录 目录 软件环境 file文件对象 open文件操作 读文件 read读取所有文件内容 readline获取一行内容 readlines读取所有文件内容 readreadlinereadlines ...
- PYDay6- 内置函数、验证码、文件操作、发送邮件函数
1.内置函数 1.1Python的内置函数 abs() dict() help() min() setattr() all() dir() hex() next() slice() any() div ...
- Python文件操作:文件的打开关闭读取写入
Python文件操作:文件的打开关闭读取写入 一.文件的打开关闭 Python能以文本和二进制两种方式处理文件,本文主要讨论在Python3中文本文件的操作. 文件操作都分为以下几个步骤: 1.打开文 ...
- C++ 学习笔记之——文件操作和文件流
1. 文件的概念 对于用户来说,常用到的文件有两大类:程序文件和数据文件.而根据文件中数据的组织方式,则可以将文件分为 ASCII 文件和二进制文件. ASCII 文件,又称字符文件或者文本文件,它的 ...
- Java IO,io,文件操作,删除文件,删除文件夹,获取文件父级目录
Java IO,io,文件操作,删除文件,删除文件夹,获取文件父级目录 这里先简单的贴下常用的方法: File.separator //当前系统文件分隔符 File.pathSeparator // ...
- C语言应用操作之文件
文件是C语言中德中的重点,小编在学习C语言基础知识的时候,大多数的输入输出操作是在屏幕上进行的,现在总算在文件学习上感觉到高大上的样纸.在以前数据量很小时,我们通常将信息从键盘在屏幕上进行输入输出的, ...
- Windows文件操作的API函数[转载]
在VC中,大多数情况对文件的操作都使用系统提供的 API 函数,但有的函数我们不是很熟悉,以下提供一些文件操作 API 函数介绍: 一般文件操作 API CreateFile 打开文件 要对文件进行读 ...
- s14 第5天 时间模块 随机模块 String模块 shutil模块(文件操作) 文件压缩(zipfile和tarfile)shelve模块 XML模块 ConfigParser配置文件操作模块 hashlib散列模块 Subprocess模块(调用shell) logging模块 正则表达式模块 r字符串和转译
时间模块 time datatime time.clock(2.7) time.process_time(3.3) 测量处理器运算时间,不包括sleep时间 time.altzone 返回与UTC时间 ...
随机推荐
- 迭代器 iterator(二): 用iterator遍历arraylist
迭代器(iterator)是一种对象,它能够用来遍历标准模板库容器中的部分或全部元素,每个迭代器对象代表容器中的确定的地址.迭代器修改了常规指针的接口,所谓迭代器是一种概念上的抽象:那些 ...
- ListView的addHeaderView()方法相关问题
使用listView.addHeaderView(view) 可以在 listView 上方添加一个view视图 ,使listView和这个view连接在一起 效果上看上去是一个整体 一般用于上拉刷新 ...
- 提高eclipse使用效率(二) 提高Android开发效率的小技巧
XML文件的代码提示 adt中也有xml文件的代码提示,为了让提示来的更加猛烈,我们还要设置一下 打开eclipse - Window - Preferences,在右边的目录树中切换到XML - X ...
- android 跳转到系统设置界面的所有Intent
Intent 的 意图: Intent intent = new Inetnt(Setings); Setings: 1. ACTION_ACCESSIBILITY_SETTINGS : // 跳转系 ...
- 【读书笔记】iOS-Coco内存管理规则-拥有对象
一,事件循环.一个典型的图形应用程序往往花费很多时间等待用户操作.在控制程序运行的人非常缓慢地作出决定(例如单击鼠标或按下某个键)以前,程序将一直处于空闲状态.当发生这样的事件时,程序被唤醒并开始工作 ...
- MyBatis入门(一)---基本使用
一.MyBatis简介 1.1.概述 MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架. MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集. M ...
- IOS 网络浅析-(四 get&post)
网络请求默认是get 网络请求有很多种:GET查 POST改 PUT增 DELETE删 HEAD 在平时开发中主要用的 是 get 和 post. get 获得数据 (获取用户信息) get 请 ...
- android network develop(1)----doing network background
Develop network with HttpURLConnection & HttpClient. HttpURLConnection is lightweight with Http ...
- linux64位操作系统装32位jdk解决方法
/opt/tomcat/tomcat7.0/bin/catalina.sh: /usr/local/java/jdk1.7.0_79/bin/java: /lib/ld-linux.so.2: bad ...
- 《SQL Server企业级平台管理实践》读书笔记——几个系统库的备份与恢复
master数据库 master作为数据库的主要数据库,记录着SQL Server系统的所有系统级信息,例如登录用户.系统配置设置.端点和凭证以及访问其他数据服务器所需要的信息.master数据库还记 ...