fseekfseek的用法

fseek  时间:2021-06-19  阅读:()

C语言中,fseek函数怎么控制移动的方向?怎么往前或往后,最好能有个例子。 谢谢!

fseek有三个参数,第1个是文件句柄,通过打开文件时得到;第2个就是移动的字节数,这个数可以是正的,就是向后(文件尾部)移动,也可以是负的,即向前(文件头部)移动;第3个参数指明从哪里移动,如果写SEEK_SET就是从文件头部移动多少字节,如果写SEEK_END则是从尾部开始移动,SEEK_CUR则是从当前位置移动。

比如 要将文件指针移动到文件开始的第24字节位置:fseek(fp,24,SEEK_SET); 移动到文件尾部向前50字节:fseek(fp,-50,SEEK_SET); 在当前位置移动8个字节(跳过8个字节数据):fseek(fp,8,SEEK_CUR); 在当前位置向前移动16个字节(准备重新读取数据):fseek(fp,-16,SEEK_CUR);

C语言fseek函数如何处理中文

中文文件要用TCHAR之类的多字节方法处理。

你的方法是把中文看成2进制一个字符一个字符的数据文件来处理,也是可以的,fseek工作完全正常, 问题是输出字符的显示,你可以显示每个字节的值,但不能显示成肉眼可识别的汉字。

putchar ( ch ); 可用于 ASCII字符。

你可以换成: printf("%02x ", 0xff & ch ); 可以显示单个字节的码值。

从输出的码值可以看出,程序没有问题,只是不能显示成肉眼可识别的汉字。

另外,如果是unicode中文文件,则文件头有不可见的文件类型区分码0xfe 0xff 或 0xff 0xfe 等等。

2个单个字节码,合成一个双字节码,有大端和小端文件问题,也许需要互相交换相邻2个字节,再显示成中文。

fseek的用法

fseek函数小案例: fseek函数介绍: fseek()?函数在打开的文件中定位。

该函数把文件指针从当前位置向前或向后移动到新的位置,新位置从文件头开始以字节数度量。

成功则返回?0;否则返回?-1。

注意,移动到?eof?之后的位置不会产生错误。

fseek函数的语法: fseek(file,offset,whence) 参数介绍: file?: ????必需。

规定要在其中定位的文件。

???? offset: ????必需。

规定新的位置(从文件头开始以字节数度量)。

???? whence?: ????可选。

可能的值: ????????seek_set?-?设定位置等于?offset?字节。

默认。

????????seek_cur?-?设定位置为当前位置加上?offset。

????????seek_end?-?设定位置为文件末尾加上?offset?(要移动到文件尾之前的位置,offset?必须是一个负值)。

VPSDime7美元/月,美国达拉斯Windows VPS,2核4G/50GB SSD/2TB流量/Hyper-V虚拟化

VPSDime是2013年成立的国外VPS主机商,以大内存闻名业界,主营基于OpenVZ和KVM虚拟化的Linux套餐,大内存、10Gbps大带宽、大硬盘,有美国西雅图、达拉斯、新泽西、英国、荷兰机房可选。在上个月搞了一款达拉斯Linux系统VPS促销,详情查看:VPSDime夏季促销:美国达拉斯VPS/2G内存/2核/20gSSD/1T流量/$20/年,此次推出一款Windows VPS,依然是...

Hostodo:$19.99/年KVM-1GB/12GB/4TB/拉斯维加斯

Hostodo发布了几款采用NVMe磁盘的促销套餐,从512MB内存起,最低年付14.99美元,基于KVM架构,开设在拉斯维加斯机房。这是一家成立于2014年的国外VPS主机商,主打低价VPS套餐且年付为主,基于OpenVZ和KVM架构,产品性能一般,数据中心目前在拉斯维加斯和迈阿密,支持使用PayPal或者支付宝等付款方式。下面列出几款NVMe硬盘套餐配置信息。CPU:1core内存:512MB...

spinservers:圣何塞10Gbps带宽服务器月付$109起,可升级1Gbps无限流量

spinservers是Majestic Hosting Solutions LLC旗下站点,主营国外服务器租用和Hybrid Dedicated等,数据中心在美国达拉斯和圣何塞机房。目前,商家针对圣何塞部分独立服务器进行促销优惠,使用优惠码后Dual Intel Xeon E5-2650L V3(24核48线程)+64GB内存服务器每月仅109美元起,提供10Gbps端口带宽,可以升级至1Gbp...

fseek为你推荐
windowsmediaWindows Media Player什么意思素数算法(c语言)求快速算素数的方法。webservice框架WebService新手,请教WebService需要什么包sms是什么短信验证是什么?防火墙技术应用常用防火墙技术有哪几种短信套餐手机短信都有什么套餐validdatevalid use date 什么意思flex是什么Adobe是什么软件?ibooks支持什么格式ibooks使用的最佳格式是什么格式?达思数据恢复如何使用recover数据恢复平台
购买域名 怎样注册域名 花生壳域名贝锐 淘宝抢红包攻略 linode日本 新加坡服务器 国外空间服务商 轻量 ibox官网 hostloc 91vps 可外链网盘 可外链相册 亚马逊香港官网 双线asp空间 web应用服务器 空间服务器 电信宽带测速软件 攻击服务器 重庆服务器 更多