新微赢技术网

标题: 文件指针定位函数 [打印本页]

作者: 我只在乎你    时间: 2009-11-3 03:04
标题: 文件指针定位函数
请问seek()这个函数怎么用?怎么有些书又写是seekg()的?
作者: CHLOE    时间: 2009-11-3 03:04
似乎文件指针定位没有seek这个函数,请问你问的是哪种文件指针?
如果是FILE的话,那么函数是fseek,例:
  1. FILE * input_file;
  2. ...open file...
  3. long lSeekPos = 10; //指向的位置
  4. fseek(input_file, lSeekPos, SEEK_SET);
  5. ...
复制代码

如果是MFC的CFile的话那么头文字要大写:Seek,例:
  1. CFile cfile;
  2. ...open file...
  3. long lOffset = 10;//指向的位置
  4. long lActual;
  5. lActual = cfile.Seek( lOffset, CFile::begin );
复制代码

如果是c++中的流的话,那么函数是seekg,例:
  1. ifstream file;
  2. ...open file ...
  3. pos_type pos = 10;//指向的位置
  4. file.seekg( pos, ios_base::beg );
  5. ...
复制代码

作者: 独臂神军    时间: 2009-11-3 03:04
perl也有....

汗一下.

-_-!!!
作者: 秋风扫落叶    时间: 2009-11-3 03:05
你可能看错了的;
在C中有个fseek函数用起来比较方便。下面给一个例子:
#include<stdio.h>
#include<iostream.h>
char charactor[1][3];
int main()
{
FILE *fp;
fp=("c:\\exmple.txt","rt+");
fputs("我爱编程",fp);
fseek(fp,4,0);
fgets(charactor[0],3,fp);
cout<<charactor[0];
cin.get();
}
本程序的功能是向一个文件中写入“我爱编程”,然后读取第三个汉字并显示出来。
谢谢!
作者: seeYa    时间: 2009-11-3 03:05
你可能看错了的;
在C中有个fseek函数用起来比较方便。下面给一个例子:
#include<stdio.h>
#include<iostream.h>
char charactor[1][3];
int main()
{
FILE *fp;
fp=("c:\\exmple.txt","rt+");
fputs("我爱编程",fp);
fseek(fp,4,0);
fgets(charactor[0],3,fp);
cout<<charactor[0];
cin.get();
}
本程序的功能是向一个文件中写入“我爱编程”,然后读取第三个汉字并显示出来。
谢谢!
作者: lianeh    时间: 2009-11-3 03:05
以下是引用stylev在2006-6-9 17:06:44的发言:
perl也有....


汗一下.


-_-!!!


没有perl啊




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2