libconfigfile: allow configfiles with another delimiter as '='

Origin commit data
------------------
Branch: ni/coolstream
Commit: f9515444f0
Author: vanhofen <vanhofen@gmx.de>
Date: 2013-11-08 (Fri, 08 Nov 2013)

Origin message was:
------------------
- libconfigfile: allow configfiles with another delimiter as '='

------------------
No further description and justification available within origin commit message!

------------------
This commit was generated by Migit
This commit is contained in:
vanhofen
2013-11-08 15:06:05 +01:00
parent d1fa33d22a
commit 801b866b98
2 changed files with 12 additions and 12 deletions

View File

@@ -51,7 +51,7 @@ void CConfigFile::clear()
// //
// public file operation methods // public file operation methods
// //
bool CConfigFile::loadConfig(const char * const filename) bool CConfigFile::loadConfig(const char * const filename, char _delimiter)
{ {
std::ifstream configFile(filename); std::ifstream configFile(filename);
@@ -67,7 +67,7 @@ bool CConfigFile::loadConfig(const char * const filename)
if (configFile.fail()) if (configFile.fail())
break; break;
std::string::size_type i = s.find('='); std::string::size_type i = s.find(_delimiter);
if (i != std::string::npos) if (i != std::string::npos)
{ {
std::string::size_type j = s.find('#'); std::string::size_type j = s.find('#');
@@ -86,12 +86,12 @@ bool CConfigFile::loadConfig(const char * const filename)
} }
} }
bool CConfigFile::loadConfig(const std::string & filename) bool CConfigFile::loadConfig(const std::string & filename, char _delimiter)
{ {
return loadConfig(filename.c_str()); return loadConfig(filename.c_str(), _delimiter);
} }
bool CConfigFile::saveConfig(const char * const filename) bool CConfigFile::saveConfig(const char * const filename, char _delimiter)
{ {
std::string tmpname = std::string(filename) + ".tmp"; std::string tmpname = std::string(filename) + ".tmp";
unlink(tmpname.c_str()); unlink(tmpname.c_str());
@@ -102,7 +102,7 @@ bool CConfigFile::saveConfig(const char * const filename)
std::cout << "[ConfigFile] saving " << filename << std::endl; std::cout << "[ConfigFile] saving " << filename << std::endl;
for (ConfigDataMap::const_iterator it = configData.begin(); it != configData.end(); ++it) for (ConfigDataMap::const_iterator it = configData.begin(); it != configData.end(); ++it)
{ {
configFile << it->first << "=" << it->second << std::endl; configFile << it->first << _delimiter << it->second << std::endl;
} }
configFile.sync(); configFile.sync();
@@ -123,9 +123,9 @@ bool CConfigFile::saveConfig(const char * const filename)
} }
} }
bool CConfigFile::saveConfig(const std::string & filename) bool CConfigFile::saveConfig(const std::string & filename, char _delimiter)
{ {
return saveConfig(filename.c_str()); return saveConfig(filename.c_str(), _delimiter);
} }

View File

@@ -50,11 +50,11 @@ class CConfigFile
public: public:
CConfigFile(const char p_delimiter, const bool p_saveDefaults = true); CConfigFile(const char p_delimiter, const bool p_saveDefaults = true);
bool loadConfig(const char * const filename); bool loadConfig(const char * const filename, char _delimiter = '=');
bool loadConfig(const std::string & filename); bool loadConfig(const std::string & filename, char _delimiter = '=');
bool saveConfig(const char * const filename); bool saveConfig(const char * const filename, char _delimiter = '=');
bool saveConfig(const std::string & filename); bool saveConfig(const std::string & filename, char _delimiter = '=');
void clear(); void clear();