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);
}
}
}