Get file information: size, device, creation time and last modification time : file utilities « File Stream « C++ Tutorial






#include <iostream>
#include <ctime>
#include <sys/types.h>
#include <sys/stat.h>
#include <cerrno>
#include <cstring>

int main(int argc, char** argv )
{
   struct stat fileInfo;

   if (stat("test.txt", &fileInfo) != 0) {  // Use stat( ) to get the info
      std::cerr << "Error: " << strerror(errno) << '\n';
      return(EXIT_FAILURE);
   }

   std::cout << "Type:         : ";
   if ((fileInfo.st_mode & S_IFMT) == S_IFDIR) { // From sys/types.h
      std::cout << "Directory\n";
   } else {
      std::cout << "File\n";
   }

   std::cout << "Size          : " <<
      fileInfo.st_size << '\n';               // Size in bytes
   std::cout << "Device        : " <<
      (char)(fileInfo.st_dev + 'A') << '\n';  // Device number
   std::cout << "Created       : " <<
      std::ctime(&fileInfo.st_ctime);         // Creation time
   std::cout << "Modified      : " <<
      std::ctime(&fileInfo.st_mtime);         // Last mod time
}
Type:         : File
Size          : 21
Device        : C
Created       : Mon Apr 23 11:16:57 2007
Modified      : Mon Apr 23 13:09:24 2007








12.7.file utilities
12.7.1.Use ifstream and ofstream to copy file
12.7.2.Check file status
12.7.3.Obtaining file size
12.7.4.A file comparision utility.
12.7.5.Get file information: size, device, creation time and last modification time
12.7.6.Count number of lines of all files passed as argument
12.7.7.Copying one file into another:
12.7.8.A simple file-comparison utility.