代码: 全选
int getfilesize(FILE *file_HDL)
{
int fileSize = 0;
int ret_code;
if(!file_HDL)
{
error("file handle is null!");
return -1;
}
ret_code = fseek(file_HDL,0,SEEK_END);
if(-1 == ret_code)
{
perror("fseek");
return 0;
}
fileSize = ftell(file_HDL);
if(-1 == fileSize)
{
perror("ftell");
}
ret_code = fseek(file_HDL,0,SEEK_SET);
if(-1 == ret_code)
{
perror("fseek");
}
return fileSize;
}
代码: 全选
sprintf(filename_buf, "%s", "/proc/bus/usb/devices");
file_hdl = fopen(filename_buf, "r");
if(NULL == file_hdl)
{
system("mount -t usbfs none /proc/bus/usb");
file_hdl = fopen("/proc/bus/usb/devices", "r");
if(NULL == file_hdl)
{
error("fopen %s failed!\n", filename_buf);
perror("fopen");
goto EXIT_FAILED1;
}
}
file_size =getfilesize(file_hdl);
if(-1 == file_size)
{
if(0 == )
{
error("file is null!\n");
}
goto EXIT_FAILED2;
}
但用来计算其他普通文件时,就没有问题。
请问各位这是个什么情况?