Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Décrit un objet qui contrôle l’insertion et l’extraction d’éléments et d’objets encodés à l’aide d’une mémoire tampon de flux de classe ,<Elem avec des éléments de type Tr, dont les caractéristiques de caractère sont déterminées par la classe.>
Syntaxe
template <class Elem, class Tr = char_traits<Elem>>
class basic_fstream : public basic_iostream<Elem, Tr>
Paramètres
Elem
Élément de base de la mémoire tampon de fichier.
Tr
Caractéristiques de l’élément de base de la mémoire tampon de fichier (généralementchar_traits<Elem>).
Notes
L’objet stocke un objet de classe basic_filebuf<Elem, . Tr>
Remarque
Les pointeurs get et put d’un objet fstream ne sont PAS indépendants l’un de l’autre. Si le pointeur get bouge, le pointeur put bouge aussi.
Exemple
L'exemple suivant montre comment créer un objet basic_fstream qui peut être lu et écrit.
// basic_fstream_class.cpp
// compile with: /EHsc
#include <fstream>
#include <iostream>
using namespace std;
int main(int argc, char **argv)
{
fstream fs("fstream.txt", ios::in | ios::out | ios::trunc);
if (!fs.bad())
{
// Write to the file.
fs << "Writing to a basic_fstream object..." << endl;
fs.close();
// Dump the contents of the file to cout.
fs.open("fstream.txt", ios::in);
cout << fs.rdbuf();
fs.close();
}
}
Writing to a basic_fstream object...
Constructeurs
| Constructeur | Descriptif |
|---|---|
| basic_fstream | Construit un objet de type basic_fstream. |
Fonctions Membre
| Fonction membre | Descriptif |
|---|---|
| fermer | Ferme un fichier. |
| is_open | Détermine si un fichier est ouvert. |
| ouvrir | Ouvre un fichier. |
| rdbuf | Retourne l’adresse de la mémoire tampon de flux stocké, du pointeur de type vers basic_filebuf<Elem, . Tr> |
| échanger | Échange le contenu de cet objet avec le contenu d'un autre objet basic_fstream. |
Spécifications
Header :<fstream>
Espace de noms : std
basic_fstream ::basic_fstream
Construit un objet de type basic_fstream.
basic_fstream();
explicit basic_fstream(
const char* _Filename,
ios_base::openmode _Mode = ios_base::in | ios_base::out,
int _Prot = (int)ios_base::_Openprot);
explicit basic_fstream(
const wchar_t* _Filename,
ios_base::openmode _Mode = ios_base::in | ios_base::out,
int _Prot = (int)ios_base::_Openprot);
basic_fstream(basic_fstream&& right);
Paramètres
_Fichier
Nom du fichier à ouvrir.
_Mode
Une des énumérations dans ios_base::openmode.
_Prot
Protection d’ouverture de fichier par défaut, équivalente au paramètre shflag dans _fsopen, _wfsopen.
Notes
Le premier constructeur initialise la classe de base en appelant basic_iostream(), où est l’objet stocké de la classe basic_filebufsbsbElem, <.> Il initialise également en sb appelant basic_filebuf<Elem, Tr.>
Les deuxième et troisième constructeurs initialisent la classe de base en appelant basic_iostream( sb). Il initialise également en sb appelantbasic_filebuf< Elem, , puis >open(_ Filename, ). Si cette dernière fonction retourne un pointeur Null, le constructeur appelle setstate(failbit).
Le quatrième constructeur initialise l’objet avec le contenu de right, traité comme une référence rvalue.
Exemple
Consultez streampos pour obtenir un exemple qui utilise basic_fstream.
basic_fstream ::close
Ferme un fichier.
void close();
Notes
La fonction membre appelle rdbuf->close.
Exemple
Consultez basic_filebuf::close pour obtenir un exemple d’utilisation de close.
basic_fstream ::is_open
Détermine si un fichier est ouvert.
bool is_open() const;
Valeur de retour
true si le fichier est ouvert, false dans le cas contraire.
Notes
La fonction membre retourne >.
Exemple
Consultez basic_filebuf::is_open pour obtenir un exemple d’utilisation de is_open.
basic_fstream ::open
Ouvre un fichier.
void open(
const char* _Filename,
ios_base::openmode _Mode = ios_base::in | ios_base::out,
int _Prot = (int)ios_base::_Openprot);
void open(
const char* _Filename,
ios_base::openmode _Mode);
void open(
const wchar_t* _Filename,
ios_base::openmode _Mode = ios_base::in | ios_base::out,
int _Prot = (int)ios_base::_Openprot);
void open(
const wchar_t* _Filename,
ios_base::openmode _Mode);
Paramètres
_Fichier
Nom du fichier à ouvrir.
_Mode
Une des énumérations dans ios_base::openmode.
_Prot
Protection d’ouverture de fichier par défaut, équivalente au paramètre shflag dans _fsopen, _wfsopen.
Notes
La fonction membre appelle rdbuf->open(_ Filename, _Mode). Si cette fonction retourne un pointeur Null, la fonction appelle setstate(failbit).
Exemple
Consultez basic_filebuf ::open pour obtenir un exemple d’utilisation open.
basic_fstream ::operator=
Assigne à cet objet le contenu d'un objet de flux spécifié. Il s'agit d'une assignation de déplacement qui implique une rvalue qui ne laisse pas de copie.
basic_fstream& operator=(basic_fstream&& right);
Paramètres
Droite
Référence lvalue à un objet basic_fstream.
Valeur de retour
Retourne *this.
Notes
L’opérateur membre remplace le contenu de l’objet à l’aide du contenu de droite, traité comme une référence rvalue.
basic_fstream ::rdbuf
Retourne l’adresse de la mémoire tampon de flux stockée, du pointeur de type vers basic_filebuf<Elem, Tr.>
basic_filebuf<Elem, Tr> *rdbuf() const
Valeur de retour
Adresse de la mémoire tampon de flux stockée.
Exemple
Consultez basic_filebuf::close pour obtenir un exemple d’utilisation de rdbuf.
basic_fstream ::swap
Échange le contenu de deux objets basic_fstream.
void swap(basic_fstream& right);
Paramètres
Droite
Référence lvalue à un objet basic_fstream.
Notes
La fonction membre échange le contenu de cet objet et le contenu du droit.
Voir aussi
Sécurité des threads dans la bibliothèque C++ Standard
iostream, programmation
iostreams, conventions