mirror of
https://github.com/boostorg/filesystem.git
synced 2025-05-12 05:31:49 +00:00
107 lines
3.8 KiB
HTML
107 lines
3.8 KiB
HTML
<html>
|
||
|
||
<head>
|
||
<meta http-equiv="Content-Language" content="en-us">
|
||
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
|
||
<meta name="ProgId" content="FrontPage.Editor.Document">
|
||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||
<title>Boost Filesystem fstream Header</title>
|
||
</head>
|
||
|
||
<body bgcolor="#FFFFFF">
|
||
|
||
<h1>
|
||
<img border="0" src="../../../c++boost.gif" align="center" width="277" height="86"><a href="../../../boost/filesystem/fstream.hpp">boost/filesystem/fstream.hpp</a></h1>
|
||
|
||
<h2><a name="Introduction">Introduction</a></h2>
|
||
|
||
<p>The C++ Standard Library's <i><fstream></i> header uses <i>const char*</i> to
|
||
pass arguments representing file names, with that usage occurring seven
|
||
times.</p>
|
||
|
||
<p>The Filesystem Library's <i>fstream.hpp</i> header provides equivalent
|
||
components, in namespace <i>
|
||
boost::filesystem</i>, except that the seven <i>
|
||
const char*</i> arguments have been replaced by <i>const path&</i> arguments.</p>
|
||
|
||
<p>The Filesystem Library's <i>fstream.hpp</i> header simply uses the <i><fstream></i> standard library
|
||
components as base classes, and then overrides the members requiring argument
|
||
types of <i>path</i>.</p>
|
||
|
||
<p>For documentation beyond the synopsis, see the
|
||
<a href="index.htm#tutorial">tutorial</a> and <a href="index.htm#Examples">
|
||
examples</a>.</p>
|
||
|
||
<h2><a name="Synopsis">Synopsis</a></h2>
|
||
<pre>namespace boost
|
||
{
|
||
namespace filesystem
|
||
{
|
||
template < class charT, class traits = std::char_traits<charT> >
|
||
class basic_filebuf : public std::basic_filebuf<charT,traits>
|
||
{
|
||
public:
|
||
virtual ~basic_filebuf() {}
|
||
|
||
std::basic_filebuf<charT,traits> * open( const path & file_ph,
|
||
std::ios_base::openmode mode );
|
||
};
|
||
|
||
typedef basic_filebuf<char> filebuf;
|
||
typedef basic_filebuf<wchar_t> wfilebuf;
|
||
|
||
template < class charT, class traits = std::char_traits<charT> >
|
||
class basic_ifstream : public std::basic_ifstream<charT,traits>
|
||
{
|
||
public:
|
||
basic_ifstream() {}
|
||
explicit basic_ifstream( const path & file_ph,
|
||
std::ios_base::openmode mode = std::ios_base::in );
|
||
virtual ~basic_ifstream() {}
|
||
void open( const path & file_ph,
|
||
std::ios_base::openmode mode = std::ios_base::in );
|
||
};
|
||
|
||
typedef basic_ifstream<char> ifstream;
|
||
typedef basic_ifstream<wchar_t> wifstream;
|
||
|
||
template < class charT, class traits = std::char_traits<charT> >
|
||
class basic_ofstream : public std::basic_ofstream<charT,traits>
|
||
{
|
||
public:
|
||
basic_ofstream() {}
|
||
explicit basic_ofstream( const path & file_ph,
|
||
std::ios_base::openmode mode = std::ios_base::out );
|
||
virtual ~basic_ofstream() {}
|
||
void open( const path & file_ph,
|
||
std::ios_base::openmode mode = std::ios_base::out );
|
||
};
|
||
|
||
typedef basic_ofstream<char> ofstream;
|
||
typedef basic_ofstream<wchar_t> wofstream;
|
||
|
||
template < class charT, class traits = std::char_traits<charT> >
|
||
class basic_fstream : public std::basic_fstream<charT,traits>
|
||
{
|
||
public:
|
||
basic_fstream() {}
|
||
explicit basic_fstream( const path & file_ph,
|
||
std::ios_base::openmode mode = std::ios_base::in|std::ios_base::out );
|
||
virtual ~basic_fstream() {}
|
||
void open( const path & file_ph,
|
||
std::ios_base::openmode mode = std::ios_base::in|std::ios_base::out );
|
||
};
|
||
|
||
typedef basic_fstream<char> fstream;
|
||
typedef basic_fstream<wchar_t> wfstream;
|
||
} // namespace filesystem
|
||
} // namespace boost
|
||
</pre>
|
||
<hr>
|
||
<p><EFBFBD> Copyright Beman Dawes, 2002</p>
|
||
<p>Revised
|
||
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->14 September, 2002<!--webbot bot="Timestamp" endspan i-checksum="39338" --></p>
|
||
|
||
</body>
|
||
|
||
</html> |