QComboBox 中三级联动设置省市区 我有一个txt文件里有各省市区的数据如图 但是我怎么去提取这些数据呢
/*
QComboBox 插的时候 ,把id 作为第二个参数,这样选择的时候就可以取到城市对应的id了
*/
void GetCity()
{
QMap idNameMap; //序号--名称
QMap > idChildsMap; //序号--所有子序号
QFile file("city.txt");
if (file.open(QIODevice::ReadOnly))
{
file.readLine();
file.readLine();
//从第三行开始
while (!file.atEnd())
{
QString strLine = file.readLine();
//分为两部分 左边-id 右边-id:城市名
QStringList firstSplits = strLine.split(":{");
//以下提取 序号-名称 所有子序号
QString strCity = firstSplits.last().remove("}");
strCity = strCity.remove("‘");
QSringList strCityList = strCity.split(",");
QList<int> idList;
for (int i = 0; i < strCityList.count(); ++i)
{
int id = strCityList.at(i).split(":").first().toInt();
QString city = strCityList.at(i).split(":").last();
idList << id;
idNameMap.insert(id, city);
}
//以下提取 序号--所有子序号
QString strId = firstSplits.first().remove("’");
QStringList strIdList = strId.split(",");
idChildsMap.insert(strIdList.last().toInt(), idList);
}
}
}
//不知为何没了
QMap< int, QString > idNameMap; //序号--名称
QMap< int, QList< int > > idChildsMap; //序号--所有子序号