Bibliothèque C ++ basic_ios - lecture

La description

Il est utilisé pour extraire n caractères du flux et les stocke dans le tableau pointé par s.

Déclaration

Voici la déclaration pour std :: basic_istream :: read.

basic_istream& read (char_type* s, streamsize n);

Paramètres

  • n - Nombre maximum de caractères à écrire dans s (y compris le caractère nul de fin).

  • s - Pointeur vers un tableau où sont stockés les caractères extraits.

Valeur de retour

Renvoie l'objet basic_istream (* this).

Des exceptions

Basic guarantee - si une exception est levée, l'objet est dans un état valide.

Courses de données

Modifie les éléments du tableau pointés par s et l'objet stream.

Exemple

Dans l'exemple ci-dessous pour std :: basic_istream :: read.

#include <iostream>     
#include <fstream>      

int main () {

   std::ifstream is ("test.txt", std::ifstream::binary);
   if (is) {
    
      is.seekg (0, is.end);
      int length = is.tellg();
      is.seekg (0, is.beg);

      char * buffer = new char [length];

      std::cout << "Reading " << length << " characters... ";
    
      is.read (buffer,length);

      if (is)
         std::cout << "all characters read successfully.";
      else
         std::cout << "error: only " << is.gcount() << " could be read";
      is.close();

    

      delete[] buffer;
   }
   return 0;
}

La sortie devrait être comme ça -

Reading 640 characters... all characters read successfully.