我正在开发一个运行在HP-NONSTOP上的C应用程序,它需要获取磁盘上文件的大小.已经实现的方法如下所示:
char *filename;
short itemlist;
long fileLength = 0;
short retCode;
itemlist = 142; /* file size */
retCode = FILE_GETINFOLISTBYNAME_( filename,
(short)strlen(filename),
&itemlist,
1,
(short*)&fileLength,
sizeof(fileLength) );
当我读到in the documentation时,这只适用于大小不超过2 GB的文件:
如果引用的文件是[...]大于大约2 GB的OSS文件,项目代码将返回-1,没有错误指示.
因此,我的问题如下:
- 如何获取大于2 GB的文件大小?
- 有没有办法了解
FILE_GETINFOLISTBYNAME_
是如何实施的?也许人们可以为大文件编写自己的实现.