La classe basic_ofstream
Décrit un objet qui contrôle l’insertion d’éléments et d’objets encodés dans une mémoire tampon de flux de classe basic_filebuf< Elem, Tr>
, avec des éléments de type Elem
, dont les caractéristiques de caractère sont déterminées par la classe Tr
. Pour plus d’informations, consultez basic_filebuf
.
Syntaxe
template <class Elem, class Tr = char_traits<Elem>>
class basic_ofstream : public basic_ostream<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éralement char_traits<Elem>
).
Notes
Lorsque la wchar_t
spécialisation des basic_ofstream
écritures dans le fichier est ouverte en mode texte, elle écrit une séquence Mo CS. La représentation interne utilisera une mémoire tampon de caractères wchar_t
.
L'objet stocke un objet de classe basic_filebuf< Elem, Tr>
.
Exemple
L'exemple suivant montre comment créer un objet basic_ofstream
et y écrire du texte.
// basic_ofstream_class.cpp
// compile with: /EHsc
#include <fstream>
using namespace std;
int main(int argc, char **argv)
{
ofstream ofs("ofstream.txt");
if (!ofs.bad())
{
ofs << "Writing to a basic_ofstream object..." << endl;
ofs.close();
}
}
Constructeurs
Constructeur | Description |
---|---|
basic_ofstream |
Crée un objet de type basic_ofstream . |
Fonctions Membre
Fonction membre | Description |
---|---|
close |
Ferme un fichier. |
is_open |
Détermine si un fichier est ouvert. |
open |
Ouvre un fichier. |
rdbuf |
Retourne l'adresse de la mémoire tampon de flux stockée. |
swap |
Échange le contenu de ce basic_ofstream avec le contenu du basic_ofstream fourni. |
Opérateurs
Opérateur | Description |
---|---|
operator= |
Assigne le contenu de cet objet de flux. Il s’agit d’une affectation de déplacement impliquant une rvalue reference opération qui ne laisse pas de copie derrière elle. |
Spécifications
En-tête<fstream>
:
Espace de noms :std
basic_ofstream::basic_ofstream
Crée un objet de type basic_ofstream
.
basic_ofstream();
explicit basic_ofstream(
const char* _Filename,
ios_base::openmode _Mode = ios_base::out,
int _Prot = (int)ios_base::_Openprot);
explicit basic_ofstream(
const wchar_t* _Filename,
ios_base::openmode _Mode = ios_base::out,
int _Prot = (int)ios_base::_Openprot);
basic_ofstream(
basic_ofstream&& right);
Paramètres
_Filename
Nom du fichier à ouvrir.
_Mode
L’une des énumérations dans ios_base::openmode
.
_Prot
Protection d’ouverture de fichier par défaut, équivalente au shflag
paramètre dans _fsopen
, _wfsopen
.
right
Référence rvalue à l’objet basic_ofstream
utilisé pour initialiser cet objet basic_ofstream
.
Notes
Le premier constructeur initialise la classe de base en appelant basic_ostream(sb)
, où sb
est l’objet stocké de la classe basic_filebuf< Elem, Tr>
. 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_ostream( sb)
. Il initialise également en sb
appelant<Elem
basic_filebuf
, Tr
> puis .sb.open( _Filename, _Mode | ios_base::out)
Si cette dernière fonction retourne un NULL
pointeur, le constructeur appelle setstate(failbit)
.
Le quatrième constructeur est une fonction de copie. Il initialise l’objet avec le contenu de right
, traité comme une référence rvalue.
Pour plus d'informations, consultez basic_ostream
, open
et setstate
.
Exemple
L'exemple suivant montre comment créer un objet basic_ofstream
et y écrire du texte.
// basic_ofstream_ctor.cpp
// compile with: /EHsc
#include <fstream>
using namespace std;
int main(int argc, char **argv)
{
ofstream ofs("C:\\ofstream.txt");
if (!ofs.bad())
{
ofs << "Writing to a basic_ofstream object..." << endl;
ofs.close();
}
}
basic_ofstream::close
Ferme un fichier.
void close();
Notes
La fonction membre appelle rdbuf->close
. Pour plus d’informations, consultez rdbuf
et close
.
Exemple
Consultez basic_filebuf::close
un exemple qui utilise close
.
basic_ofstream::is_open
Indique 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 rdbuf->is_open
. Pour plus d’informations, consultez rdbuf
et is_open
.
Exemple
// basic_ofstream_is_open.cpp
// compile with: /EHsc
#include <fstream>
#include <iostream>
int main( )
{
using namespace std;
ifstream file;
// Open and close with a basic_filebuf
file.rdbuf( )->open( "basic_ofstream_is_open.txt", ios::in );
file.close( );
if (file.is_open())
cout << "it's open" << endl;
else
cout << "it's closed" << endl;
}
basic_ofstream::open
Ouvre un fichier.
void open(
const char* _Filename,
ios_base::openmode _Mode = 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::out,
int _Prot = (int)ios_base::_Openprot);
void 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
Protection d’ouverture de fichier par défaut, équivalente au shflag
paramètre dans _fsopen
, _wfsopen
.
Notes
La fonction membre appelle rdbuf -> open(_ Filename, _Mode | ios_base::out)
. Si cette fonction retourne un NULL
pointeur, la fonction appelle setstate(failbit)
.
Pour plus d'informations, consultez rdbuf
, open
et setstate
.
Exemple
Consultez basic_filebuf::open
un exemple qui utilise open
.
basic_ofstream::operator=
Assigne le contenu de cet objet de flux. Il s’agit d’une affectation de déplacement impliquant une rvalue reference
opération qui ne laisse pas de copie derrière elle.
basic_ofstream& operator=(basic_ofstream&& right);
Paramètres
right
Référence rvalue à un objet basic_ofstream
.
Valeur de retour
Retourne *this
.
Notes
L'opérateur membre remplace le contenu de l'objet à l'aide du contenu de right
, traité comme une référence rvalue.
basic_ofstream::rdbuf
Retourne l'adresse de la mémoire tampon de flux stockée.
basic_filebuf<Elem, Tr> *rdbuf() const
Valeur de retour
Retourne l'adresse de la mémoire tampon de flux stockée.
Exemple
Consultez basic_filebuf::close
un exemple qui utilise rdbuf
.
basic_ofstream::swap
Échange le contenu de deux objets basic_ofstream
.
void swap(basic_ofstream& right);
Paramètres
right
Référence lvalue
à un autre objet basic_ofstream
.
Notes
La fonction membre échange le contenu de cet objet avec celui de right
.
Voir aussi
basic_ostream
Classe
Sécurité des threads dans la bibliothèque C++ Standard
iostream
Programmation
iostreams
Conventions
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour