QT 如何在文件中查找是否有該字符或字符串?

QT 如何百科在文件中查找是否有該字符或字符串?

1、在 Qt 中,默認的編碼是 Unicode,書寫的代碼文件被強制轉換為 utf8,但是,在簡體中文版的 Windows 操作系統(tǒng)中,默認編碼卻是 GBK。

2、因此,在編譯 Qt 程序時,如果代碼中含有特定中文字符,Qt 的編譯器就會發(fā)生誤判,向我們報告“常量中有換行符”。

3、這時需要打開Qt Creator,點擊菜單“工具”-“選項”。

4、在“文本編輯器”-“行為”選項卡中,將文件編碼更改為 UTF-8,并且選擇“如果編碼是UTF-8則添加”。

5、或者,在代碼中用?QString.toLocal8Bit( )?將 Unicode 編碼轉換為本地系統(tǒng)編碼,就完成了。

如何查詢當前環(huán)境下,Qt所支持的字體的名稱

目前從事嵌入式系統(tǒng)下的Qt應用程序開發(fā);程序需要支持中文,需要想qt的字體目錄下導入中文字體;目前導入為微軟雅黑字體;當時不知道setfamily的時候需要使用的是什么名稱;該如何解決呢?Qt已經(jīng)給出了解決方案了;使用QFontDatabase類;根據(jù)幫助文檔:Detailed DescriptionThe QFontDatabase class provides information about the fonts available in the underlying window system.具體描述:QFontDatabase類提供了當前系統(tǒng)下可用的字體的信息;該類其中一個函數(shù):QStringList QFontDatabase::families ( WritingSystem writingSystem = Any ) constReturns a sorted list of the available font families which support the writingSystem.返回支持writingSystem的所有字體類型那么就可以使用這個函數(shù)了解我們需要的信息;例如:[cpp] view plaincopyQFontDatabase database;foreach (const QString &family, database.families()){qDebug()<<family;} 以上這段代碼就可以枚舉出系統(tǒng)支持的所有字體的名稱;[cpp] view plaincopyQFontDatabase database;foreach (const QString &family, database.families(QFontDatabase::SimplifiedChinese)){qDebug()<<family;} 以上這段代碼就可以枚舉出系統(tǒng)中所有支持中文的字體名稱。

請教:Qt下如何獲取支持中文顯示的字體**

QString是支持Unicode的字符串類型。 先調用編碼: QTextCodec *codec=QTextCodec::codecForName(\”GB2312\”); QString str=codec->toUnicode(\”這是中文輸出。