Partager via


basic_filebuf::open

Ouvre un fichier.

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
);

Paramètres

  • _Filename
    Nom du fichier à ouvrir.

  • _Mode
    L'une des énumérations dans ios_base::openmode.

  • _Prot
    La protection ouverture de fichier par défaut, correspondant au paramètre d'shflag dans _fsopen, _wfsopen.

Valeur de retour

Si le pointeur de fichier est un pointeur null, la fonction retourne un pointeur null. Sinon, elle retourne this.

Notes

La fonction membre ouvre le fichier sous le nom du fichierde nom de fichier, en appelant fopen(nom de fichier, strmode). strmode est déterminé à partir de mode &| (a mangé& | binaire) :

  • ios_base::in est "r" (fichier existant ouvert pour la lecture).

  • ios_base::out ou ios_base::out | ios_base::trunc est "w" (fichier existant tronqué ou les créer en écriture).

  • ios_base::out | app est "a" (fichier existant ouvert pour ajouter toutes les écritures).

  • ios_base::in | ios_base::out est "r+" (fichier existant ouvert en lecture et en écriture).

  • ios_base::in | ios_base::out | ios_base::trunc est "w+" (fichier existant tronqué ou les créer en lecture et en écriture).

  • ios_base::in | ios_base::out | ios_base::app est "a+" (fichier existant ouvert pour la lecture et pour ajouter toutes les écritures).

Si mode & ios_base::binary est différente de zéro, la fonction b ajoute à strmode pour ouvrir un flux binaire au lieu d'un flux de texte. Il stocke la valeur renvoyée par fopen du pointeur de fichier fp. Si mode & ios_base::ate est différente de zéro et le pointeur de fichier n'est pas un pointeur null, les appels de fonction fseek(fp, 0, SEEK_END) pour positionner le flux de fin de fichier. Si cette opération positionnante échoue, les appels de fonction fermez(fp) et stocke un pointeur null dans le pointeur de fichier.

Si le pointeur de fichier n'est pas un pointeur null, la fonction détermine la facette de conversion du fichier : use_facet<codecvt<Elem, char, traits_type::state_type> >(getloc), qui sera alors utilisée par d'dépassement de précision et d'dépassement de capacité.

Si le pointeur de fichier est un pointeur null, la fonction retourne un pointeur null. Sinon, elle retourne this.

Exemple

Voir le basic_filebuf::close pour obtenir un exemple qui utilise ouvrir.

Configuration requise

**En-tête :**fstream <de >

Espace de noms : std

Voir aussi

Référence

basic_filebuf, classe

iostream, programmation

iostreams, conventions