C语言操作文本文件问题

zhfisking 2007-06-26 02:21:22
请问C语言操作.txt文件时,调用fopen()涵数后,能否得到该文件流的Byte数?
...全文
318 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengdream 2007-06-26
  • 打赏
  • 举报
回复
打开后用fseek(移动文件流的读写位置)
FILE *stream=fopen(“/etc/passwd”,”r”);
fseek(stream,5,SEEK_END);
long n = ftell(stream);

======函数说明:


fseek(移动文件流的读写位置)
相关函数 rewind,ftell,fgetpos,fsetpos,lseek

表头文件 #include<stdio.h>

定义函数 int fseek(FILE * stream,long offset,int whence);

函数说明 fseek()用来移动文件流的读写位置。参数stream为已打开的文件指针,参数offset为根据参数whence来移动读写位置的位移数。

参数 whence为下列其中一种:
SEEK_SET从距文件开头offset位移量为新的读写位置。SEEK_CUR 以目前的读写位置往后增加offset个位移量。
SEEK_END将读写位置指向文件尾后再增加offset个位移量。
当whence值为SEEK_CUR 或SEEK_END时,参数offset允许负值的出现。
下列是较特别的使用方式:
1) 欲将读写位置移动到文件开头时:fseek(FILE *stream,0,SEEK_SET);
2) 欲将读写位置移动到文件尾时:fseek(FILE *stream,0,0SEEK_END);

返回值 当调用成功时则返回0,若有错误则返回-1,errno会存放错误代码。
;;;;;;;;;


ftell(取得文件流的读取位置)
相关函数 fseek,rewind,fgetpos,fsetpos

表头文件 #include<stdio.h>

定义函数 long ftell(FILE * stream);

函数说明 ftell()用来取得文件流目前的读写位置。参数stream为已打开的文件指针。

返回值 当调用成功时则返回目前的读写位置,若有错误则返回-1,errno会存放错误代码。

snow_kit 2007-06-26
  • 打赏
  • 举报
回复
查看函数 原型吧 好像有个参数就是用 设定读取长度的

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧