Maison > Article > développement back-end > Comment obtenir la taille d’un fichier en utilisant C++ ?
Question : Comment obtenir la taille d’un fichier en C++ ? Réponse : 1. Utilisez la fonction membre std::ifstream::tellg() pour obtenir le nombre d'octets lus ou écrits depuis l'ouverture du flux de fichiers ; 2. Utilisez std::filesystem::directory_iterator pour parcourir les fichiers du répertoire ; et utilisez std::ifstream::tellg() pour calculer le nombre d'octets dans chaque fichier et les additionner pour obtenir la taille totale.
Comment obtenir la taille d'un fichier en C++ ?
En C++, vous pouvez utiliser la fonction membre std::ifstream
类来打开和读取文件。该类包含std::ifstream::tellg()
qui renvoie le nombre d'octets lus ou écrits depuis l'ouverture du flux de fichiers. Cela peut être utilisé pour obtenir la taille du fichier.
Exemple de code :
#include <iostream> #include <fstream> int main() { // 打开文件 std::ifstream file("myfile.txt"); // 获取文件的大小 file.seekg(0, std::ios::end); int file_size = file.tellg(); // 打印文件大小 std::cout << "The file size is: " << file_size << " bytes" << std::endl; file.close(); return 0; }
Cas pratique :
Ce qui suit est un exemple d'obtention de la taille totale de tous les fichiers dans un répertoire spécifique :
#include <iostream> #include <fstream> #include <filesystem> int main() { std::filesystem::path directory_path("my_directory"); // 遍历目录中的文件 int total_file_size = 0; for (const auto& entry : std::filesystem::directory_iterator(directory_path)) { if (entry.is_regular_file()) { // 打开文件 std::ifstream file(entry.path()); // 获取文件大小并累加到总和 file.seekg(0, std::ios::end); total_file_size += file.tellg(); file.close(); } } // 打印总文件大小 std::cout << "The total size of all files in the directory is: " << total_file_size << " bytes" << std::endl; return 0; }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!