Class representing a file submitted via an HTML form. More...
#include <cgicc/FormFile.h>
Public Member Functions | |
Constructors and Destructor | |
FormFile () | |
Default constructor. | |
FormFile (const std::string &name, const std::string &filename, const std::string &dataType, const std::string &data) | |
Create a new FormFile. | |
FormFile (const FormFile &file) | |
Copy constructor. | |
~FormFile () | |
Destructor. | |
Overloaded Operators | |
bool | operator== (const FormFile &file) const |
Compare two FormFiles for equality. | |
bool | operator!= (const FormFile &file) const |
Compare two FormFiles for inequality. | |
FormFile & | operator= (const FormFile &file) |
Assign one FormFile to another. | |
Accessor Methods | |
Information on the uploaded file | |
void | writeToStream (std::ostream &out) const |
Write this file data to the specified stream. | |
std::string | getName () const |
Get the name of the form element. | |
std::string | getFilename () const |
Get the basename of the file on the remote machine. | |
std::string | getDataType () const |
Get the MIME type of the file data. | |
std::string | getData () const |
Get the file data. | |
std::string::size_type | getDataLength () const |
Get the length of the file data. | |
Class representing a file submitted via an HTML form.
FormFile is an immutable class reprenting a file uploaded via the HTTP file upload mechanism. If you are going to use file upload in your CGI application, remember to set the ENCTYPE of the form to multipart/form-data
.
<form method="post" action="http://change_this_path/cgi-bin/upload.cgi" enctype="multipart/form-data">
Definition at line 64 of file FormFile.h.
|
inline |
cgicc::FormFile::FormFile | ( | const std::string & | name, |
const std::string & | filename, | ||
const std::string & | dataType, | ||
const std::string & | data | ||
) |
|
inline |
Copy constructor.
Sets the name, filename, datatype, and data to those of file
file | The FormFile to copy. |
Definition at line 103 of file FormFile.h.
|
inline |
|
inline |
Get the file data.
This returns the raw file data as a string
Definition at line 214 of file FormFile.h.
|
inline |
Get the length of the file data.
The length of the file data is usually measured in bytes.
Definition at line 224 of file FormFile.h.
|
inline |
Get the MIME type of the file data.
This will be of the form text/plain
or image/jpeg
Definition at line 204 of file FormFile.h.
|
inline |
Get the basename of the file on the remote machine.
The filename is stripped of all leading directory information
Definition at line 194 of file FormFile.h.
|
inline |
Get the name of the form element.
The name of the form element is specified in the HTML form that called the CGI application.
Definition at line 184 of file FormFile.h.
|
inline |
Compare two FormFiles for inequality.
FormFiles are equal if they have the same filename.
file | The FormFile to compare to this one. |
false
if the two FormFiles are equal, true
otherwise. Definition at line 139 of file FormFile.h.
bool cgicc::FormFile::operator== | ( | const FormFile & | file | ) | const |
Compare two FormFiles for equality.
FormFiles are equal if they have the same filename.
file | The FormFile to compare to this one. |
true
if the two FormFiles are equal, false
otherwise. void cgicc::FormFile::writeToStream | ( | std::ostream & | out | ) | const |
Write this file data to the specified stream.
This is useful for saving uploaded data to disk
out | The ostream to which to write. |