filesize.h
547 Bytes
#ifndef STIM_UTIL_FILESIZE_H
#define STIM_UTIL_FILESIZE_H
#ifdef _WIN32
#include <Windows.h>
#endif
namespace stim{
static size_t file_size(std::string filename){
#ifdef _WIN32
HANDLE hFile = CreateFile(filename.c_str(), GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if(hFile == INVALID_HANDLE_VALUE) return 0;
LARGE_INTEGER size;
if(!GetFileSizeEx(hFile, &size)){
CloseHandle(hFile);
return 0;
}
CloseHandle(hFile);
return (size_t)size.QuadPart;
#elif
#endif
}
} //end namespace stim
#endif