Biblioteca C ++ basic_ios - leer

Descripción

Se utiliza para extraer n caracteres del flujo y los almacena en la matriz señalada por s.

Declaración

A continuación se muestra la declaración de std :: basic_istream :: read.

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

Parámetros

  • n - Número máximo de caracteres para escribir en s (incluido el carácter nulo de terminación).

  • s - Puntero a una matriz donde se almacenan los caracteres extraídos.

Valor devuelto

Devuelve el objeto basic_istream (* this).

Excepciones

Basic guarantee - si se lanza una excepción, el objeto está en un estado válido.

Carreras de datos

Modifica los elementos de la matriz señalados por sy el objeto de flujo.

Ejemplo

En el siguiente ejemplo para 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 salida debería ser así:

Reading 640 characters... all characters read successfully.