glibmm: Glib::Dir Class Reference
Utility class representing an open directory. More...
#include <glibmm/fileutils.h>
Public Types | |
using | iterator = DirIterator |
using | const_iterator = DirIterator |
Public Member Functions | |
Dir (const std::string& path) | |
Opens a directory for reading. More... | |
Dir (const Dir&)=delete | |
Dir& | operator= (const Dir&)=delete |
~Dir () | |
Closes the directory and deallocates all related resources. More... | |
std::string | read_name () |
Retrieves the name of the next entry in the directory. More... | |
void | rewind () |
Resets the directory. More... | |
void | close () |
Closes the directory and deallocates all related resources. More... | |
DirIterator | begin () |
Get the begin of an input iterator sequence. More... | |
DirIterator | end () |
Get the end of an input iterator sequence. More... | |
Detailed Description
Utility class representing an open directory.
It's highly recommended to use the iterator interface. With iterators, reading an entire directory into a STL container is really easy:
Glib::Dir dir (directory_path);
std::list<std::string> entries (dir.begin(), dir.end());
- Note
- The encoding of the directory entries isn't necessarily UTF-8. Use Glib::filename_to_utf8() if you need to display them.
Member Typedef Documentation
using Glib::Dir::const_iterator = DirIterator |
using Glib::Dir::iterator = DirIterator |
Constructor & Destructor Documentation
|
explicit |
Opens a directory for reading.
The names of the files in the directory can then be retrieved using read_name().
- Parameters
-
path The path to the directory you are interested in.
- Exceptions
-
Glib::FileError
|
delete |
Glib::Dir::~Dir | ( | ) |
Closes the directory and deallocates all related resources.
Member Function Documentation
DirIterator Glib::Dir::begin | ( | ) |
Get the begin of an input iterator sequence.
- Returns
- An input iterator pointing to the first directory entry.
void Glib::Dir::close | ( | ) |
DirIterator Glib::Dir::end | ( | ) |
Get the end of an input iterator sequence.
- Returns
- An input iterator pointing behind the last directory entry.
std::string Glib::Dir::read_name | ( | ) |
void Glib::Dir::rewind | ( | ) |
Resets the directory.
The next call to read_name() will return the first entry again.