代码
#include "mainwindow.h"
#include <QApplication>
#include <QFile>
#include<QTextStream>
#include<qDebug>
#include <cstdlib>
#include <QProcessEnvironment>
QMap<QString,QString> simData();
void readFile();
void writeFile();
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
writeFile();
readFile();
return a.exec();
}
QMap<QString,QString> simData(){
QMap<QString,QString> mapData;
mapData.insert("Baidu","www.baidu.com");
mapData.insert("Apple","www.apple.com");
return mapData;
}
void writeFile(){
QString envPath = QString::fromLocal8Bit(std::getenv("HOME"));
envPath.append("/data.log");
QFile file(envPath);
file.open(QIODevice::WriteOnly | QIODevice::Truncate);
QTextStream out(&file);
QMap<QString,QString> mapData = simData();
QMapIterator<QString, QString> i(mapData);
while (i.hasNext())
{
i.next();
out<<i.key()<<",";
out<<i.value()<<"\n";
}
file.close();
}
void readFile(){
QFile file("data.log");
QString key, value;
file.open(QIODevice::ReadOnly);
QTextStream in(&file);
QString line = in.readLine();
QStringList strList = line.split(",");
if(strList.count() == 2)
{
key = strList.value(0);
value = strList.value(1);
qDebug()<<key<<","<<value;
}
while(!line.isNull())
{
line=in.readLine();
strList = line.split(",");
if(strList.count() == 2)
{
key = strList.value(0);
value = strList.value(1);
qDebug()<<key<<","<<value;
}
}
file.close();
}