Compartilhar via


basic_filebuf::open

Abre um arquivo.

basic_filebuf<Elem, Tr> *open(
    const char *_Filename,
    ios_base::openmode _Mode,
    int _Prot = (int)ios_base::_Openprot
);
basic_filebuf<Elem, Tr> *open(
    const char *_Filename,
    ios_base::openmode _Mode
);
basic_filebuf<Elem, Tr> *open(
    const wchar_t *_Filename,
    ios_base::openmode _Mode,
    int _Prot = (int)ios_base::_Openprot
);
basic_filebuf<Elem, Tr> *open(
    const wchar_t *_Filename,
    ios_base::openmode _Mode
);

Parâmetros

  • _Filename
    O nome do arquivo para abrir o.

  • _Mode
    Uma das enumerações em ios_base::openmode.

  • _Prot
    Proteção de abertura do arquivo padrão, equivalente ao parâmetro de shflag em _fsopen, _wfsopen.

Valor de retorno

Se o ponteiro do arquivo é um ponteiro zero, a função retorna um ponteiro nulo.Caso contrário, retornará this.

Comentários

A função de membro abre o arquivo com o nome de arquivode nome de arquivo, chamando fopen(nome de arquivo, strmode).strmode é determinado de mode &(~comeu & | binário):

  • ios_base::in transformações "r" (arquivo existente aberto para leitura).

  • ios_base::out ou ios_base::out | ios_base::trunc se tornam "w" (o arquivo existente ou truncado cria escrevendo).

  • ios_base::out | app transformações "a" (arquivo existente aberto para acrescentar grava todas).

  • ios_base::in | ios_base::out transformações "r+" (arquivo existente aberto para leitura e gravação).

  • ios_base::in | ios_base::out | ios_base::trunc transformações "w+" (o arquivo existente ou truncado cria ler e gravar).

  • ios_base::in | ios_base::out | ios_base::app transformações "a+" (arquivo existente aberto para leitura e acrescentar grava todas).

Se mode & ios_base::binary é diferente de zero, a função b acrescenta a strmode para abrir um fluxo binário em vez de um fluxo de texto.Armazena o valor retornado por fopen no ponteiro do arquivo fp.Se mode & ios_base::ate é diferente de zero e o ponteiro do arquivo não é um ponteiro zero, as chamadas de função fseek(fp, 0, SEEK_END) para posicionar o fluxo no final do arquivo.Se a operação falha de posicionamento, as chamadas de função final(fp) e armazena um ponteiro zero no ponteiro do arquivo.

Se o ponteiro do arquivo não é um ponteiro zero, a função determina o aspecto de conversão de arquivo: use_facet<codecvt<Elem, char, traits_type::state_type> > (),getlocpara o uso de estouro negativo e de estouro.

Se o ponteiro do arquivo é um ponteiro zero, a função retorna um ponteiro nulo.Caso contrário, retornará this.

Exemplo

basic_filebuf::close consulte para um exemplo que usa abrir.

Requisitos

Cabeçalho: <fstream>

namespace: STD

Consulte também

Referência

basic_filebuf Class

iostream de programação

Convenções de iostreams