basic_fstream Sınıfı
sınıf basic_filebuf Tr
<Elem
>bir akış arabelleği kullanarak öğelerin ve kodlanmış nesnelerin eklenmesini ve ayıklandığını denetleyen ve karakter özellikleri sınıfı Tr
tarafından belirlenen türündeki Elem
öğeleri içeren bir nesneyi açıklar.
Sözdizimi
template <class Elem, class Tr = char_traits<Elem>>
class basic_fstream : public basic_iostream<Elem, Tr>
Parametreler
Elem
Dosya arabelleğinin temel öğesi.
Tr
Dosya arabelleğinin temel öğesinin özellikleri (genellikle char_traits
Elem
<>).
Açıklamalar
nesnesi , Tr
>sınıfının basic_filebuf
<Elem
bir nesnesini depolar.
Not
Bir fstream nesnesinin get işaretçisi ve put işaretçisi birbirinden bağımsız DEĞİlDİR . Get işaretçisi hareket ederse, yerleştirme işaretçisi de hareket eder.
Örnek
Aşağıdaki örnekte, öğesinden okunabilen ve yazılabilir bir basic_fstream
nesnenin nasıl oluşturulacağı gösterilmektedir.
// 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...
Oluşturucular
Oluşturucu | Açıklama |
---|---|
basic_fstream | türünde basic_fstream bir nesnesi oluşturur. |
Üye işlevleri
Üye işlevi | Açıklama |
---|---|
close | Bir dosyayı kapatır. |
is_open | Bir dosyanın açık olup olmadığını belirler. |
open | Bir dosya açar. |
rdbuf | basic_filebuf Tr >Elem <için işaretçi türündeki depolanan akış arabelleğinin adresini döndürür. |
değiş tokuş etmek | Bu nesnenin içeriğini başka bir basic_fstream nesnenin içeriğiyle değiştirir. |
Gereksinimler
Üst Bilgi:<fstream>
Ad alanı: std
basic_fstream::basic_fstream
türünde basic_fstream
bir nesnesi oluşturur.
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);
Parametreler
_Dosyaadı
Açılacak dosyanın adı.
_Mod
ios_base::openmode içindeki numaralandırmalardan biri.
_Prot
_fsopen'daki shflag parametresine eşdeğer varsayılan dosya açma koruması _wfsopen.
Açıklamalar
İlk oluşturucu, basic_iostream() çağrısı yaparak temel sınıfı başlatır; burada sb
basic_filebuf<Elem, Tr> sınıfının depolanan nesnesidir.sb
Ayrıca Elem, Tr'yi> çağırarak<basic_filebuf
da başlatılır.sb
İkinci ve üçüncü oluşturucular ( sb) çağrısı basic_iostream
yaparak temel sınıfı başlatır. Ayrıca Elem, Tr> ve sonra sb çağrılarak<basic_filebuf
başlatılır. sb
open(_ Dosya Adı, _Mode
). İkinci işlev null bir işaretçi döndürürse, oluşturucu setstate()failbit
öğesini çağırır.
Dördüncü oluşturucu, nesnesini içeriğiyle right
başlatır ve rvalue başvurusu olarak değerlendirilir.
Örnek
kullanan basic_fstream
bir örnek için bkz. streampos.
basic_fstream::close
Bir dosyayı kapatır.
void close();
Açıklamalar
Üye işlevi rdbuf-> close öğesini çağırır.
Örnek
nasıl kullanılacağına close
ilişkin bir örnek için bkz. basic_filebuf::close.
basic_fstream::is_open
Bir dosyanın açık olup olmadığını belirler.
bool is_open() const;
Dönüş Değeri
true
dosya açıksa, false
aksi takdirde.
Açıklamalar
Üye işlevi rdbuf-is_open> döndürür.
Örnek
nasıl kullanılacağına is_open
ilişkin bir örnek için bkz. basic_filebuf::is_open.
basic_fstream::open
Bir dosya açar.
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);
Parametreler
_Dosyaadı
Açılacak dosyanın adı.
_Mod
ios_base::openmode içindeki numaralandırmalardan biri.
_Prot
_fsopen'daki shflag parametresine eşdeğer varsayılan dosya açma koruması _wfsopen.
Açıklamalar
Üye işlevi rdbuf -> open(_ Filename, ). _Mode
Bu işlev null bir işaretçi döndürürse, işlev setstate( failbit
) öğesini çağırır.
Örnek
nasıl kullanılacağına open
ilişkin bir örnek için bkz. basic_filebuf::open.
basic_fstream::operator=
Belirtilen bir akış nesnesinden içeriği bu nesneye atar. Bu, arkasında bir kopya bırakmayan bir rvalue içeren bir taşıma atamasıdır.
basic_fstream& operator=(basic_fstream&& right);
Parametreler
Sağ
Bir nesneye basic_fstream
lvalue başvurusu.
Dönüş Değeri
*this
döndürür.
Açıklamalar
Üye işleci, nesnenin içeriğini, rvalue başvurusu olarak değerlendirilen sağ öğesinin içeriğini kullanarak değiştirir.
basic_fstream::rdbuf
basic_filebuf<Elem, Tr> için işaretçi türündeki depolanan akış arabelleğinin adresini döndürür.
basic_filebuf<Elem, Tr> *rdbuf() const
Dönüş Değeri
Depolanan akış arabelleğinin adresi.
Örnek
nasıl kullanılacağına rdbuf
ilişkin bir örnek için bkz. basic_filebuf::close.
basic_fstream::swap
İki basic_fstream
nesnenin içeriğini değiştirir.
void swap(basic_fstream& right);
Parametreler
Sağ
Bir lvalue
nesneye basic_fstream
başvuru.
Açıklamalar
Üye işlevi, bu nesnenin içeriğini ve sağın içeriğini değiştirir.
Ayrıca bkz.
C++ Standart Kitaplığında İş Parçacığı Güvenliği
iostream Programlaması
iostreams Kuralları