QSettings類關聯了相關文件(不同的平台,文件類型不同),以保存應用程序的一些設置,如下是關於QSettings的一些簡單的測試,值得探討的地方還請不吝指教 [cpp] #include <QtCore/QCoreApplication> #include <QtCore/QSettings> #include <QStringList> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); QSettings settings("CSUST.Embedded", "settings"); // settings文件標識 // a.setOrganizationName("CSUST.Embedded"); // 也可以這樣設置settings的文件標識 // a.setApplicationName("settings"); // QSettings settings(); // 簡單的插入設置對 settings.setValue("數值", 40); printf("%s\n", "測試簡單的插入"); printf("%d\n", settings.value("數值").toInt()); // 簡單的組應用 settings.beginGroup("myGroup"); settings.setValue("數值", 50); // settings.setValue("數值", 55); // 在組中,鍵值不能重復用來定義“設置對”,重復的結果是(55)覆蓋原來的值(50) settings.endGroup(); // 在組外可以定義和組中鍵值相同的“設置對” settings.beginGroup("myGroup"); printf("%d\n", settings.value("數值").toInt()); settings.endGroup(); printf("%s\n", "測試組應用"); printf("%d\n", settings.value("數值").toInt()); // 簡單的數組應用 QStringList list; list.append("AAA"); list.append("BBB"); list.append("CCC"); list.append("DDD"); settings.beginWriteArray("myArray"); for(int i = 0; i < list.count(); i++) { settings.setArrayIndex(i); settings.setValue("字母串", list.at(i)); // 數組中准許鍵重名 } settings.endArray(); // settings.setValue("字母串", "EEE"); // 數組外可以定義和數組中鍵重名的“設置對” printf("%s\n", "測試數組應用"); int size = settings.beginReadArray("myArray"); for(int i = 0; i < size; i++) { settings.setArrayIndex(i); printf("%s\n", settings.value("字母串").toString().toAscii().data()); } settings.endArray(); // printf("%s\n", settings.value("字母串").toString().toAscii().data()); return a.exec(); } 只是簡單的測試,為了方便,沒有給字符串加tr()以迎合國際化