定义:
apr_status_t apr_file_seek ( apr_file_t * thefile,
apr_seek_where_t where,
apr_off_t * offset
)
Move the read/write file offset to a specified byte within a file.
Parameters
thefile
The file descriptor
where
How to move the pointer, one of:
offset
The offset to move the pointer to.
Remarks
The third argument is modified to be the offset the pointer was actually moved to.
根据定义, 当设置为APR_END 时, 文件指针指向文件尾,
测试文件内容为a.txt:TVVEVS1DTE9VRC1ITUFDLVN, 总共为24位
执行
apr_file_seek(file, APR_END, &offset)
日志打印为:
================license_data f_size=23
这边注意的是a.txt 中除了这24个字符之外没有其他任何字符, 因此可以确定,当光标在文件头时,offset 为0, 当光标为APR_END 时,指向的其实是文件的最后一个字符,如果这个文件中只有纯字符,没有LF(换行键), 那么通过apr_file_seek(file, APR_END, &offset) 拿到的这个文件长度其实是比实际文件长度小1的。