Library: Util
Package: Configuration
Header: Poco/Util/PropertyFileConfiguration.h
Description
This implementation of a Configuration reads properties from a Java-style properties file.
The file syntax is implemented as follows.
- a line starting with a hash '#' or exclamation mark '!' is treated as a comment and ignored
- every other line denotes a property assignment in the form <key> = <value> or <key> : <value>
Keys and values may contain special characters represented by the following escape sequences:
- \t: tab (0x09)
- \n: line feed (0x0a)
- \r: carriage return (0x0d)
- \f: form feed (0x0c)
For every other sequence that starts with a backslash, the backslash is removed. Therefore, the sequence \a would just yield an 'a'.
A value can spread across multiple lines if the last character in a line (the character immediately before the carriage return or line feed character) is a single backslash.
Property names are case sensitive. Leading and trailing whitespace is removed from both keys and values. A property name can neither contain a colon ':' nor an equal sign '=' character.
Inheritance
Direct Base Classes: MapConfiguration
All Base Classes: Poco::RefCountedObject, AbstractConfiguration, MapConfiguration
Member Summary
Inherited Functions: begin, clear, copyTo, createLocalView, createView, duplicate, enableEvents, end, enumerate, eventsEnabled, expand, getBool, getDouble, getInt, getInt16, getInt32, getInt64, getRaw, getRawString, getString, getUInt, getUInt16, getUInt32, getUInt64, has, hasOption, hasProperty, keys, parseBool, parseInt, parseInt16, parseInt64, parseUInt, parseUInt16, parseUInt64, referenceCount, release, remove, removeRaw, setBool, setDouble, setInt, setInt16, setInt32, setInt64, setRaw, setRawWithEvent, setString, setUInt, setUInt16, setUInt32, setUInt64
Constructors
PropertyFileConfiguration
Creates an empty PropertyFileConfiguration.
PropertyFileConfiguration
PropertyFileConfiguration(
std::istream & istr
);
Creates an PropertyFileConfiguration and loads the configuration data from the given stream, which must be in properties file format.
PropertyFileConfiguration
PropertyFileConfiguration(
const std::string & path
);
Creates an PropertyFileConfiguration and loads the configuration data from the given file, which must be in properties file format.
Destructor
~PropertyFileConfiguration
Member Functions
load
void load(
std::istream & istr
);
Loads the configuration data from the given stream, which must be in properties file format.
load
void load(
const std::string & path
);
Loads the configuration data from the given file, which must be in properties file format.
save
void save(
std::ostream & ostr
) const;
Writes the configuration data to the given stream.
The data is written as a sequence of statements in the form <key>: <value> separated by a newline character.
save
void save(
const std::string & path
) const;
Writes the configuration data to the given file.