JNI中如何处理C的指针呀,比如文件指针有没
1个回答
2018-01-17 · 知道合伙人互联网行家
关注
展开全部
你指的是缓冲区位置呀。 fgetpos(),fseek(),fsetpos()这三个函数可以实现对文件读取中位置的操作 fseek () 函数名: fseek 功 能: 重定位流上的文件指针 用 法: int fseek(FILE *stream, long offset, int fromwhere); 描 述: 函数设置文件指针stream的位置。如果执行成功,stream将指向以fromwhere为基准,偏移offset个字节的位置。如果执行失败(比如offset超过文件自身大小),则不改变stream指向的位置。 返回值: 成功,返回0,否则返回其他值。 fgetpos() 函数名: fgetpos 功 能: 取得当前文件的句柄 用 法: int fgetpos(FILE *stream,*fpos_t filepos); 程序例: #include <string.h> #include <stdio.h> int main(void) { FILE *stream; char string[] = "This is a test"; fpos_t filepos; /* open a file for update */ stream = fopen("DUMMY.FIL", "w+"); /* write a string into the file */ fwrite(string, strlen(string), 1, stream); /* report the file pointer position */ fgetpos(stream, &filepos); printf("The file pointer is at byte\ %ld\n", filepos); fclose(stream); return 0; } fsetpos () 函数名: fsetpos 功 能: 定位流上的文件指针 用 法: int fsetpos(FILE *stream, const fpos_t *pos); 还不明白的话可以到专门网站上查查这三个函数
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询