Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Beskriver ett objekt som styr infogning och extrahering av element och kodade objekt med hjälp av en strömbuffert av klass basic_filebuf<Elem, , Tr>med element av typen Elem, vars karaktärsdrag bestäms av klassen Tr.
Syntax
template <class Elem, class Tr = char_traits<Elem>>
class basic_fstream : public basic_iostream<Elem, Tr>
Parameterar
Elem
Det grundläggande elementet i filbufferten.
Tr
Egenskaperna hos det grundläggande elementet i filbufferten (vanligtvis char_traits<Elem>).
Anmärkningar
Objektet lagrar ett objekt av klassen basic_filebuf<Elem, . Tr>
Anmärkning
Hämta pekaren och placera pekaren för ett fstream-objekt är INTE oberoende av varandra. Om hämtar pekaren flyttas, så gör även put-pekaren.
Exempel
I följande exempel visas hur du skapar ett basic_fstream objekt som kan läsas från och skrivas till.
// 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...
Konstruktörer
| Konstruktor | Beskrivning |
|---|---|
| basic_fstream | Konstruerar ett objekt av typen basic_fstream. |
Medlemsfunktioner
| Medlemsfunktion | Beskrivning |
|---|---|
| stäng | Stänger en fil. |
| is_open | Avgör om en fil är öppen. |
| öppna | Öppnar en fil. |
| rdbuf | Returnerar adressen till den lagrade dataströmbufferten, av typen pekare till basic_filebuf<Elem, Tr>. |
| växla | Utbyter innehållet i det här objektet med innehållet i ett annat basic_fstream objekt. |
Kravspecifikation
Rubrik:<fstream>
namnområde: std
basic_fstream::basic_fstream
Konstruerar ett objekt av typen 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);
Parameterar
_Filnamn
Namnet på filen som ska öppnas.
_Läge
En av uppräkningarna i ios_base::openmode.
_Prot
Standardskyddet för filöppning, som motsvarar parametern shflag i _fsopen, _wfsopen.
Anmärkningar
Den första konstruktorn initierar basklassen genom att anropa basic_iostream(sb), där sb är det lagrade objektet för klassen basic_filebuf<Elem, Tr>. Det initieras sb också genom att anropa basic_filebuf<Elem, Tr>.
Den andra och tredje konstruktorn initierar basklassen genom att anropa basic_iostream( sb). Den initieras sb också genom att anropa basic_filebuf<Elem, Tr> och sedan sb.open(_ Filename, _Mode). Om den senare funktionen returnerar en null-pekare anropar konstruktorn setstate(failbit).
Den fjärde konstruktorn initierar objektet med innehållet i right, som behandlas som en rvalue-referens.
Exempel
Se streampos för ett exempel som använder basic_fstream.
basic_fstream::close
Stänger en fil.
void close();
Anmärkningar
Medlemsfunktionen anropar rdbuf-close>.
Exempel
Se basic_filebuf::close för ett exempel på hur du använder close.
basic_fstream::is_open
Avgör om en fil är öppen.
bool is_open() const;
Returvärde
true om filen är öppen, false annars.
Anmärkningar
Medlemsfunktionen returnerar rdbuf-is_open>.
Exempel
Se basic_filebuf::is_open för ett exempel på hur du använder is_open.
basic_fstream::open
Öppnar en fil.
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);
Parameterar
_Filnamn
Namnet på filen som ska öppnas.
_Läge
En av uppräkningarna i ios_base::openmode.
_Prot
Standardskyddet för filöppning, som motsvarar parametern shflag i _fsopen, _wfsopen.
Anmärkningar
Medlemsfunktionen anropar rdbuf-open>(_ Filename, _Mode). Om funktionen returnerar en null-pekare anropar funktionen setstate(failbit).
Exempel
Se basic_filebuf::open för ett exempel på hur du använder open.
basic_fstream::operator=
Tilldelar det här objektet innehållet från ett angivet dataströmobjekt. Det här är en flytttilldelning som omfattar en rvalue som inte lämnar en kopia kvar.
basic_fstream& operator=(basic_fstream&& right);
Parameterar
rätt
En lvalue-referens till ett basic_fstream objekt.
Returvärde
Returnerar *this.
Anmärkningar
Medlemsoperatorn ersätter innehållet i objektet med hjälp av innehållet i rättigheten, som behandlas som en rvalue-referens.
basic_fstream::rdbuf
Returnerar adressen till den lagrade dataströmbufferten, av typen pekare till basic_filebuf<Elem, Tr>.
basic_filebuf<Elem, Tr> *rdbuf() const
Returvärde
Adressen till den lagrade dataströmbufferten.
Exempel
Se basic_filebuf::close för ett exempel på hur du använder rdbuf.
basic_fstream::swap
Utbyter innehållet i två basic_fstream objekt.
void swap(basic_fstream& right);
Parameterar
rätt
En lvalue referens till ett basic_fstream objekt.
Anmärkningar
Medlemsfunktionen utbyter innehållet i det här objektet och innehållet i rättigheten.
Se även
Trådsäkerhet i C++ Standard Library
iostream-programmering
iostreams-konventioner