Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menjelaskan objek yang mengontrol ekstraksi elemen dan objek yang dikodekan dari buffer aliran kelas basic_filebuf<Elem, Tr>, dengan elemen jenis Elem, yang sifat karakternya ditentukan oleh kelas Tr.
Untuk informasi selengkapnya, lihat basic_filebuf .
Sintaks
template <class Elem, class Tr = char_traits<Elem>>
class basic_ifstream : public basic_istream<Elem, Tr>
Parameter
Elem
Elemen dasar buffer file.
Tr
Ciri-ciri elemen dasar buffer file (biasanya char_traits<Elem>).
Keterangan
Objek menyimpan objek kelas basic_filebuf<Elem, Tr>.
Contoh
Contoh berikut menunjukkan cara membaca teks dari file.
// basic_ifstream_class.cpp
// compile with: /EHsc
#include <fstream>
#include <iostream>
using namespace std;
int main(int argc, char **argv)
{
ifstream ifs("basic_ifstream_class.txt");
if (!ifs.bad())
{
// Dump the contents of the file to cout.
cout << ifs.rdbuf();
ifs.close();
}
}
Masukan: basic_ifstream_class.txt
This is the contents of basic_ifstream_class.txt.
Output
This is the contents of basic_ifstream_class.txt.
Konstruktor
| Konstruktor | Deskripsi |
|---|---|
basic_ifstream |
Menginisialisasi instans basic_ifstream baru objek. |
Fungsi anggota
| Fungsi anggota | Deskripsi |
|---|---|
close |
Menutup berkas. |
is_open |
Menentukan apakah file terbuka. |
open |
Membuka file. |
rdbuf |
Mengembalikan alamat buffer aliran tersimpan. |
swap |
Menukar konten ini basic_ifstream dengan konten yang disediakan basic_ifstream. |
Operator
| Operator | Deskripsi |
|---|---|
operator= |
Menetapkan isi objek aliran ini. Ini adalah penetapan pemindahan yang rvalue melibatkan yang tidak meninggalkan salinan di belakang. |
Persyaratan
Header: <fstream>
kumpulan nama XML: std
basic_ifstream::basic_ifstream
Membuat objek jenis basic_ifstream.
basic_ifstream();
explicit basic_ifstream(
const char* _Filename,
ios_base::openmode _Mode = ios_base::in,
int _Prot = (int)ios_base::_Openprot);
explicit basic_ifstream(
const wchar_t* _Filename,
ios_base::openmode _Mode = ios_base::in,
int _Prot = (int)ios_base::_Openprot);
basic_ifstream(basic_ifstream&& right);
Parameter
_Filename
Nama file yang akan dibuka.
_Mode
Salah satu enumerasi dalam ios_base::openmode.
_Prot
Perlindungan pembukaan file default, setara dengan shflag parameter di _fsopen, _wfsopen.
Keterangan
Konstruktor pertama menginisialisasi kelas dasar dengan memanggil basic_istream(sb), di mana sb adalah objek kelas basic_filebuf<Elem, Tr>yang disimpan . Ini juga menginisialisasi sb dengan memanggil basic_filebuf<Elem, Tr>.
Konstruktor kedua dan ketiga menginisialisasi kelas dasar dengan memanggil basic_istream(sb). Ini juga menginisialisasi sb dengan memanggil basic_filebuf<Elem, Tr>, lalu sb.open(_Filename, _Mode | ios_base::in). Jika fungsi terakhir mengembalikan penunjuk null, konstruktor akan memanggil setstate(failbit).
Konstruktor keempat menginisialisasi objek dengan konten right, diperlakukan sebagai rvalue referensi.
Untuk informasi selengkapnya, lihat basic_istream, basic_filebuf, setstate, dan open.
Contoh
Contoh berikut menunjukkan cara membaca teks dari file. Untuk membuat file, lihat contoh untuk basic_ofstream::basic_ofstream.
// basic_ifstream_ctor.cpp
// compile with: /EHsc
#include <fstream>
#include <iostream>
using namespace std;
int main(int argc, char **argv)
{
ifstream ifs("basic_ifstream_ctor.txt");
if (!ifs.bad())
{
// Dump the contents of the file to cout.
cout << ifs.rdbuf();
ifs.close();
}
}
basic_ifstream::close
Menutup berkas.
void close();
Keterangan
Fungsi anggota memanggil rdbuf -> close.
Contoh
Lihat basic_filebuf::close contoh yang menggunakan close.
basic_ifstream::is_open
Menentukan apakah file terbuka.
bool is_open() const;
Tampilkan Nilai
true jika file terbuka, false jika tidak.
Keterangan
Fungsi anggota mengembalikan rdbuf -> is_open.
Contoh
Lihat basic_filebuf::is_open contoh yang menggunakan is_open.
basic_ifstream::open
Membuka file.
void open(
const char* _Filename,
ios_base::openmode _Mode = ios_base::in,
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,
int _Prot = (int)ios_base::_Openprot);
void open(
const wchar_t* _Filename,
ios_base::openmode _Mode);
Parameter
_Filename
Nama file yang akan dibuka.
_Mode
Salah satu enumerasi dalam ios_base::openmode.
_Prot
Perlindungan pembukaan file default, setara dengan shflag parameter di _fsopen, _wfsopen.
Keterangan
Fungsi anggota memanggil rdbuf->open(_Filename, _Mode | ios_base::in). Untuk informasi lebih lanjut, lihat rdbuf dan basic_filebuf::open. Jika terbuka gagal, fungsi memanggil setstate(failbit), yang dapat melemparkan ios_base::failure pengecualian. Untuk informasi selengkapnya, lihat setstate .
Contoh
Lihat basic_filebuf::open contoh yang menggunakan open.
basic_ifstream::operator=
Menetapkan isi objek aliran ini. Ini adalah penetapan pemindahan yang rvalue melibatkan yang tidak meninggalkan salinan di belakang.
basic_ifstream& operator=(basic_ifstream&& right);
Parameter
right
Referensi rvalue ke basic_ifstream objek.
Tampilkan Nilai
Menampilkan *this.
Keterangan
Operator anggota menggantikan konten objek dengan menggunakan konten right, diperlakukan sebagai rvalue referensi. Untuk informasi lebih lanjut, lihat Lvalues dan Rvalues.
basic_ifstream::rdbuf
Mengembalikan alamat buffer aliran tersimpan.
basic_filebuf<Elem, Tr> *rdbuf() const
Tampilkan Nilai
Penunjuk ke objek yang basic_filebuf mewakili buffer aliran yang disimpan.
Contoh
Lihat basic_filebuf::close contoh yang menggunakan rdbuf.
basic_ifstream::swap
Menukar isi dua basic_ifstream objek.
void swap(basic_ifstream& right);
Parameter
right
Referensi ke buffer aliran lain.
Keterangan
Fungsi anggota bertukar isi objek ini dengan konten right.
Lihat juga
Keamanan utas di Pustaka Standar C++
iostream Pemrograman
iostreams Konvensi