qt中如何寫配置文件
① qt編程,如何實現在每次打開程序的時候都可以載入上一次的配置信息,例如第一次打開程序後把幾個文件名
如果是指qt編輯器的話,點 文件 session manager 在左下方框中選中「啟動時恢復上次會話」。
如果是指自己寫代碼實現這個功能,就是用qsetting類,加入配置信息後自動生成配置文件,每次打開軟體時去讀取配置文件。
② Qt 關於讀寫配置文件.ini,該如何解決
我寫個了程序,用到了配置文件來初始化和保存程序中的文本框的信息。在我的電腦可以實現 但是發到不裝Qt的電腦上,程序就只可以讀取配置文件的數據 , 但是不能把新信息寫入。
------解決方案--------------------------------------------------------
------解決方案--------------------------------------------------------
沒qt的電腦,需要你把自己exe依賴的qt庫都打包放在一起,這樣在沒qt環境的電腦上才能正常運行。
------解決方案--------------------------------------------------------
③ 如何設置Qt中的build settings
在Windows操作系統中,大多把配置文件信息寫在注冊表當中,或寫在*.ini文件中,對於這兩種操作都有相應的Windows API函數,在以前的文章中都提及過,這里就不多說了~在Qt中,提供了一個相應的配置文件的類QSetting,使用QSetting類,可以將用戶設置以及應用程序的設置輕松存儲在磁碟中。QSettings::Scope(配置存儲范圍)分為UserScope、SystemScope。
QSettings::UserScope:用戶環境,設置在當前用戶的特定位置中。
QSettings::SystemScope:系統環境,設置在全局型,所有用戶均可獲得。以下是對應QSettings::Format和QSettings::Scope存放的默認路徑位置,其中*表示的是對應的程序名稱:
Platform Format Scope Path
Windows NativeFormat UserScope HKEY_CURRENT_USERSoftware*
SystemScope HKEY_LOCAL_MACHINESoftware*
IniFormat UserScope %APPDATA%*.ini
SystemScope %COMMON_APPDATA%*.ini
Unix NativeFormat UserScope $HOME/.config/*.conf
SystemScope /etc/xdg/*.conf
IniFormat UserScope $HOME/.config/*.ini
SystemScope /etc/xdg/*.ini
Mac OS X NativeFormat UserScope $HOME/Library/Preferences/com.*.plist
SystemScope /Library/Preferences/com.*.plist
IniFormat UserScope $HOME/.config/*.ini
SystemScope /etc/xdg/*.ini
在讀寫時,路徑名必須是"/"而不是"\"等。否則不能讀寫,注意。以Windows XP平台為例,舉倆個例子程序~■、讀寫注冊表
//Format為QSettings::NativeFormat
QSettings settings("HKEY_CURRENT_USER\Software\Microsoft\Office",
QSettings::NativeFormat);
//設置鍵值信息
settings.setValue("11.0/Outlook/Security/DontTrustInstalledFiles", 0);
//獲取鍵值信息
int value = settings.value("11.0/Outlook/Security/DontTrustInstalledFiles").toInt();
對應的值可是bool,double,QString,QStringList,或者是其他QVariant支持的數據類型,也包括注冊過的用戶自定義類型。
刪除設置對應的是settings->remove( const QString & key );■、讀取ini配置文件
先定義下software.ini文件的格式,比較簡單:[bolg]
Name = "vic.MINg"
//Format為QSettings::IniFormat
QSettings *setIni=new QSettings ("software", QSettings::IniFormat);
//設置鍵值信息
setIni->beginGroup("bolg");
setIni->setValue("Name", "vic.MINg");
setIni->endGroup();
//獲取鍵值信息
setIni->beginGroup("bolg");
QString resault = setIni->value("Name").toString();
setIni->endGroup();
qDebug()<<resault;
QSetting的應用並不難,但很有用,一些更細致的操作用法,可以參看幫助文檔!可以參照示例:$
④ qt 怎樣將conf配置文件 轉json配置文件
在Windows操作系統中,大多把配置文件信息寫在注冊表當中,或寫在*.ini文件中,對於這兩種操作都有相應的Windows API函數,在以前的文章中都提及過,這里就不多說了~
在Qt中,提供了一個相應的配置文件的類QSetting,使用QSetting類,可以將用戶設置以及應用程序的設置輕松存儲在磁碟中。
QSettings::Format(配置存儲格式)分為NativeFormat、IniFormat、InvalidFormat。這里主要講的是NativeFormat和IniFormat。
QSettings::NativeFormat:在Windows中,利用系統注冊表來存儲;在 Mac OS X中,使用系統的CFPreferences機制來存儲(使用Core Foundation Preference API);在其他平台中,設置則存儲在文本文件中。
QSettings::IniFormat:讀寫*.ini格式的配置文件,NativeFormat在某些操作系統中的擴展名是*.conf。
QSettings::Scope(配置存儲范圍)分為UserScope、SystemScope。
QSettings::UserScope:用戶環境,設置在當前用戶的特定位置中。
QSettings::SystemScope:系統環境,設置在全局型,所有用戶均可獲得。
⑤ qt中怎樣寫xml文件和讀xml文件
qt提供了很詳細的xml讀寫方法
在pro文件中加一個這個
QT += xml
就可以使用比如
#include <QDomNode>
⑥ QT界面編程-伺服器配置界面實現
界面採用QTableWidget控制項做列表.
寫配置文件,採用QSettings類操作文件。
----------------------------------------------------------
建立信號\槽,QTableWidget改變之後,發送singal,你直接操作QSettings就可以了;
如果是配置文件改變,這個你需要使用QTimer一直檢查配置文件,如果有改變,你就更改QTableWidget就可以了