FBB::TempStream(3bobcat)
Temporary fstream
(libbobcat-dev_6.06.02)
2005-2024
NAME
FBB::TempStream - Temporary fstream
SYNOPSIS
    #include <bobcat/tempstream>
DESCRIPTION
    FBB::TempStream objects are temporary std::fstreams opened with
mode 0600 (user only read+write). The file created by a TempStream object
is removed from the file system once the TempStream object goes out of
scope.
A TempStream object creates an empty file, and information can
immediately be inserted into the TempStream object. To switch between
insertion and extraction simply call seekg (for extraction) or seekp
(for insertion).
NAMESPACE
    FBB
    All constructors, members, operators and manipulators, mentioned in this
man-page, are defined in the namespace FBB.
INHERITS FROM
    std::fstream
CONSTRUCTORS
    
    -  TempStream(std::string const &base = "/tmp/FBB::TempStream"):
 The constructor initializes the object and creates a file with the
given base-name to which six random characters are appended. If the
TempStream could not be constructed an FBB::Exception is thrown.
Copy and move constructors (and assignment operators) are not available.
MEMBER FUNCTIONS
     All std::fstream members are available, as FBB::TempStream
inherits from this class. In addition, TempStream itself offers
    
    -  std::string const &fileName() const:
 The name of the created temporary file.
EXAMPLE
        
    #include <iostream>
    #include <bobcat/tempstream>
    using namespace std;
    using namespace FBB;
    int main()
    {
        TempStream ts("/tmp/demo");
        ts << "Hello world\n";
        ts.seekg(0);
        string line;
        getline(ts, line);
        cout << line << ", removed: " << ts.fileName() << '\n';
    }
        
FILES
    bobcat/tempstream - defines the class interface
SEE ALSO
    bobcat(7), mkostemp(3)
BUGS
    None reported.
BOBCAT PROJECT FILES
    -  https://fbb-git.gitlab.io/bobcat/: gitlab project page;
    
-  bobcat_6.06.02-x.dsc: detached signature;
    
-  bobcat_6.06.02-x.tar.gz: source archive;
    
-  bobcat_6.06.02-x_i386.changes: change log;
    
-  libbobcat1_6.06.02-x_*.deb: debian package containing the
            libraries;
    
-  libbobcat1-dev_6.06.02-x_*.deb: debian package containing the
            libraries, headers and manual pages;
    
BOBCAT
    Bobcat is an acronym of `Brokken's Own Base Classes And Templates'.
COPYRIGHT
    This is free software, distributed under the terms of the
    GNU General Public License (GPL).
AUTHOR
    Frank B. Brokken (f.b.brokken@rug.nl).