Lecture de tous les octets d'un fichier dans un tableau de caractères
Étant donné un chemin de fichier stocké dans la chaîne inputFile et un tampon de tableau de caractères avec un taille prédéfinie, cette question explore comment lire les octets du fichier dans le tampon.
L'approche préférée pour la lecture générale de fichiers consiste à utiliser std::vector
ifstream::read() pour l'accès aux octets
Pour capturer le fichier sous forme de flux d'octets, ifstream::read() est utilisé :
<code class="cpp">// Open file std::ifstream infile(inputFile); infile.seekg(0, std::ios::end); size_t length = infile.tellg(); infile.seekg(0, std::ios::beg); // Read file infile.read(buffer, length);</code>
Comprendre Seekg() et Tellg()
seekg() et tellg() sont utilisés pour déterminer le taille du fichier. Cependant, il est important de noter que tellg() ne garantit pas la taille exacte du fichier dans toutes les situations.
Considérations pour le mode binaire
Lors de l'ouverture du fichier, considérez activer le mode binaire à l'aide de std::ios_base::binary pour empêcher les conversions de caractères susceptibles d'avoir un impact sur le nombre d'octets.
Gestion des lectures tamponnées
Si plusieurs lectures tamponnées sont utilisées, il est crucial de suivre le nombre de caractères lus à l'aide de std::ifstream::gcount().
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!