#include "configurer.h" #include #include #include QString Configurer::processName() { return "/usr/bin/fl_4g"; } QString Configurer::confName() { return "/etc/wiet/daemon_4g.conf"; } void Configurer::changConf(const QString &key, const QString &value) { bool bFind =false; QList confInfo =readConf(); QString data; foreach (QString row, confInfo) { QStringList list = SystemManager::instance()->getMatch(row, "[#a-zA-Z0-9_]+"); if(list.contains(key) && list[0][0] !='#'){ bFind = true; data += (key +" = "+value +newLineChars()); }else{ data += (row +newLineChars()); } } if(!bFind) { data += (key +" = "+value +newLineChars()); } writeConf(data); } void Configurer::changConf(const QMap &maps) { QList confInfo = readConf(); QString data; QList keys= maps.keys(); foreach (QString row, confInfo) { QStringList list = SystemManager::instance()->getMatch(row, "[#a-zA-Z0-9_]+"); if(list.size() >0 && maps.contains(list[0])&& list[0][0] != '#') { data += (list[0] +" = "+maps.value(list[0]) +newLineChars()); keys.removeOne(list[0]); }else{ data += (row +newLineChars()); } } for(int i=0; i=1 && list.contains(key) && list[0][0] !='#'){ if(list.size()>1) { results = list[1]; } break; } } return results; } QList Configurer::readConf() { QList list; QFile file(confName()); if(file.open(QFile::ReadOnly| QFile::Text)) { QTextStream stream(&file); QString line; while (stream.readLineInto(&line)) { list<< line; } file.close(); } return list; } void Configurer::writeConf(const QString &data) { QFile file(confName()); if(file.open(QFile::ReadWrite| QFile::Text |QFile::Truncate)) { file.write(data.toLocal8Bit()); file.close(); } } QString Configurer::newLineChars() { return "\n"; }