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?必须是一个负值)。

justhost:“第4次VPS测评”,8.3元/月,200M带宽,不限流量,KVM虚拟,4个俄罗斯机房应有适合你的

justhost.ru官方来消息说已经对网络进行了比较全面的优化,针对中国电信、联通、移动来说,4个机房总有一个适合中国用户,让站长进行一下测试,这不就有了这篇有关justhost的VPS的第四次测评。本帖主要关注的是网络,对于其他的参数一概不管! 官方网站:https://justhost.ru 最低配VPS:8.3元/月,KVM,512M内存,5G硬盘,200M带宽,不限流量 购买链接:...

2021年全新Vultr VPS主机开通云服务器和选择机房教程(附IP不通问题)

昨天有分享到"2021年Vultr新用户福利注册账户赠送50美元"文章,居然还有网友曾经没有注册过他家的账户,薅过他们家的羊毛。通过一阵折腾居然能注册到账户,但是对于如何开通云服务器稍微有点不对劲,对于新人来说确实有点疑惑。因为Vultr采用的是预付费充值方式,会在每月的一号扣费,当然我们账户需要存留余额或者我们采用自动扣费支付模式。把笔记中以前的文章推送给网友查看,他居然告诉我界面不同,看的不对...

CloudCone:$17.99/年KVM-1GB/50GB/1TB/洛杉矶MC机房

CloudCone在月初发了个邮件,表示上新了一个系列VPS主机,采用SSD缓存磁盘,支持下单购买额外的CPU、内存和硬盘资源,最低年付17.99美元起。CloudCone成立于2017年,提供VPS和独立服务器租用,深耕洛杉矶MC机房,最初提供按小时计费随时退回,给自己弄回一大堆中国不能访问的IP,现在已经取消了随时删除了,不过他的VPS主机价格不贵,支持购买额外IP,还支持购买高防IP。下面列...

fseek为你推荐
南宁虚拟空间南宁自由空间在哪里?免费图片上传怎样免费把图片上传到淘宝上 ?scriptmanagerscriptmanager.registerstartupscript是.net3.5吗上行宽带上行宽带和下行宽带代表什么?5e5e5e如何更改bootstrap navbar的颜色 03 Topics 03 Ruby Chinasms是什么什么是SMS协议全局钩子求助:全局钩子是怎么回事啊?下载的游戏为什么会安装钩子?求大神帮助怎么查微信注册时间怎么查看自己的微信号用了多久怎样删除聊天记录如何删除聊天aviconverter哪款AVI转换器好用?推荐一下
免费域名空间 godaddy域名解析 什么是二级域名 贝锐花生壳域名 suspended php探针 嘉洲服务器 京东商城0元抢购 e蜗 域名转接 699美元 php空间购买 vip购优惠 昆明蜗牛家 idc查询 如何安装服务器系统 根服务器 中国电信测速器 什么是web服务器 中国linux 更多