Maison > développement back-end > C++ > Comment puis-je déterminer la taille du fichier en C avec des dépendances minimales ?

Comment puis-je déterminer la taille du fichier en C avec des dépendances minimales ?

Barbara Streisand
Libérer: 2024-11-23 00:51:12
original
584 Les gens l'ont consulté

How Can I Determine File Size in C   With Minimal Dependencies?

Détermination de la taille du fichier en C avec des dépendances minimales

La récupération de la taille du fichier est une exigence courante dans divers scénarios de programmation. En C , de nombreuses méthodes peuvent être utilisées pour y parvenir. Cet article traite d'une approche portable et fiable qui minimise les dépendances de bibliothèques externes.

L'une des méthodes les plus simples pour déterminer la taille d'un fichier consiste à utiliser la classe std::ifstream. Cette approche ne nécessite aucune bibliothèque supplémentaire et est largement prise en charge sur des plates-formes telles que Unix, Mac et Windows.

#include <fstream>

std::ifstream::pos_type file_size(const char* filename) {
    std::ifstream in(filename, std::ifstream::ate | std::ifstream::binary);
    return in.tellg();
}
Copier après la connexion

Dans ce code, l'indicateur ate spécifie que le flux de fichiers doit commencer à la fin de le fichier. L'indicateur binaire garantit que le fichier est ouvert en mode binaire, ce qui est essentiel pour déterminer avec précision la taille du fichier sur toutes les plateformes.

La fonction tellg() renvoie la position actuelle du pointeur de fichier, qui correspond à la la taille du fichier. Notez cependant que cette approche n'est pas toujours fiable, car la fonction tellg() peut renvoyer des valeurs incorrectes dans certaines circonstances. Par conséquent, des méthodes alternatives peuvent être nécessaires dans certains cas.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal