Biblioteca C ++ basic_ios - ler

Descrição

Ele é usado para extrair n caracteres do fluxo e armazená-los no array apontado por s.

Declaração

A seguir está a declaração para std :: basic_istream :: read.

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

Parâmetros

  • n - Número máximo de caracteres a serem gravados em s (incluindo o caractere nulo de terminação).

  • s - Ponteiro para uma matriz onde os caracteres extraídos são armazenados.

Valor de retorno

Retorna o objeto basic_istream (* this).

Exceções

Basic guarantee - se uma exceção for lançada, o objeto está em um estado válido.

Corridas de dados

Modifica os elementos na matriz apontada por seo objeto stream.

Exemplo

No exemplo abaixo 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;
}

A saída deve ser assim -

Reading 640 characters... all characters read successfully.