Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Olyan objektumot ír le, amely az basic_filebuf osztály<Elem streampufferével szabályozza az elemek és kódolt objektumok beszúrását és kinyerést, Tr>olyan típusú Elemelemekkel, amelyek karaktertulajdonságait az osztály Trhatározza meg.
Szemantika
template <class Elem, class Tr = char_traits<Elem>>
class basic_fstream : public basic_iostream<Elem, Tr>
Paraméterek
Elem
A fájlpuffer alapeleme.
Tr
A fájlpuffer alapelemének jellemzői (általábanchar_traits<Elem>).
Megjegyzések
Az objektum egy osztályobjektumot basic_filebuf<Elemtárol . Tr>
Megjegyzés:
A fstream objektum lekérési mutatója és mutatója NEM független egymástól. Ha a lekérés mutatója mozog, akkor a mutató is elmozdul.
példa
Az alábbi példa bemutatja, hogyan hozhat létre olyan basic_fstream objektumot, amelyből beolvasható és beírható.
// 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...
Konstruktorok
| Konstruktor | Leírás |
|---|---|
| basic_fstream | Egy típusú basic_fstreamobjektumot hoz létre. |
Tagfüggvények
| Tagfüggvény | Leírás |
|---|---|
| bezárása | Fájl bezárása. |
| is_open | Meghatározza, hogy egy fájl meg van-e nyitva. |
| nyisd meg | Megnyitja a fájlt. |
| rdbuf | A tárolt streampuffer címét adja vissza, amely a basic_filebuf<Elem, Tr>. |
| felcserélési | Az objektum tartalmának cseréje egy másik basic_fstream objektum tartalmával. |
Követelmények
Fejléc:<fstream>
Névtér: std
basic_fstream::basic_fstream
Egy típusú basic_fstreamobjektumot hoz létre.
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éterek
_Fájlnév
A megnyitni kívánt fájl neve.
_Üzemmód
Az ios_base::openmode enumerációinak egyike.
_Prot
Az alapértelmezett fájlmegnyitási védelem, amely egyenértékű a _fsopen shflag paraméterével , _wfsopen.
Megjegyzések
Az első konstruktor inicializálja az alaposztályt a basic_iostream(sb) meghívásával, ahol sb a basic_filebuf<Elem, Tr> osztály tárolt objektuma található. Inicializálja sb az basic_filebuf, < meghívását > is.
A második és a harmadik konstruktor inicializálja az alaposztályt az (basic_iostream) hívásával. Inicializálja sbbasic_filebuf< az Elem, Tr>, majd sb.open(_ Filename, _Mode). Ha az utóbbi függvény null mutatót ad vissza, a konstruktor meghívja a setstate()failbit függvényt.
A negyedik konstruktor inicializálja az objektumot a rvalue-referenciaként kezelt tartalommal right.
példa
Tekintse meg a streamposokat egy példát, amely a következőt használja basic_fstream: .
basic_fstream::close
Fájl bezárása.
void close();
Megjegyzések
A tagfüggvény rdbuf-closemeghívást> ad.
példa
A basic_filebuf::close című témakörben talál egy példát a használat closemódjára.
basic_fstream::is_open
Meghatározza, hogy egy fájl meg van-e nyitva.
bool is_open() const;
Visszaadott érték
true ha a fájl meg van nyitva, false ellenkező esetben.
Megjegyzések
A tagfüggvény rdbuf-is_open> ad vissza.
példa
A basic_filebuf ::is_open című cikkben talál egy példát a használat is_openmódjára.
basic_fstream::megnyitás
Megnyitja a fájlt.
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éterek
_Fájlnév
A megnyitni kívánt fájl neve.
_Üzemmód
Az ios_base::openmode enumerációinak egyike.
_Prot
Az alapértelmezett fájlmegnyitási védelem, amely egyenértékű a _fsopen shflag paraméterével , _wfsopen.
Megjegyzések
A tagfüggvény meghívja az rdbuf-open>(_ Filename, _Mode). Ha a függvény null mutatót ad vissza, a függvény meghívja a setstate()failbit függvényt.
példa
Lásd a basic_filebuf::megnyitás példát a használatra open.
basic_fstream::operátor=
Hozzárendeli ehhez az objektumhoz egy adott streamobjektum tartalmát. Ez egy áthelyezési hozzárendelés, amely olyan rvalue-t tartalmaz, amely nem hagy hátra egy másolatot.
basic_fstream& operator=(basic_fstream&& right);
Paraméterek
jobb
Egy objektumra mutató lvalue-hivatkozás basic_fstream .
Visszaadott érték
Visszatér *this.
Megjegyzések
A tag operátor a jobb oldali tartalommal helyettesíti az objektum tartalmát, amelyet értékhivatkozásként kezelnek.
basic_fstream::rdbuf
A tárolt streampuffer címét adja vissza, amely a basic_filebuf<Elem, Tr> típusú mutatót adja vissza.
basic_filebuf<Elem, Tr> *rdbuf() const
Visszaadott érték
A tárolt streampuffer címe.
példa
A basic_filebuf::close című témakörben talál egy példát a használat rdbufmódjára.
basic_fstream::swap
Két basic_fstream objektum tartalmát cseréli le.
void swap(basic_fstream& right);
Paraméterek
jobb
Egy lvalue objektumra mutató basic_fstream hivatkozás.
Megjegyzések
A tagfüggvény kicseréli az objektum tartalmát és a jog tartalmát.
Lásd még
Szálbiztonság a C++ Standard könyvtárban
iostream programozás
iostreams-egyezmények