码迷,mamicode.com
首页 > 编程语言 > 详细

QT仿照MFC读取INI文件(支持中文)

时间:2016-12-05 15:02:29      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:qt

QT仿照MFC读取INI文件(支持中文)


#include <QSettings> 
#include <QtGui> 
UINT SEGetPrivateProfileInt(LPCSTR lpAppName, LPCSTR lpKeyName,  
    INT nDefault, LPCSTR lpFileName) 

    UINT nReturn = nDefault; 
    QString strDefault, strItem, strSection, strKey; 
    strItem = ""; 
    strDefault.sprintf("%d", nDefault); 
 
    QTextCodec *codec = QTextCodec::codecForName("GB2312"); 
    QSettings Setting(lpFileName, QSettings::IniFormat);     
    Setting.setIniCodec(codec);     
    strSection = QString::fromLatin1(lpAppName, strlen(lpAppName)); 
    strKey = QString::fromLatin1(lpKeyName, strlen(lpKeyName)); 
    strItem.append(strSection); 
    strItem.append("/"); 
    strItem.append(strKey); 
     nReturn = Setting.value(strItem, strDefault).toUInt(); 
    return nReturn; 

 
DWORD SEGetPrivateProfileString(LPCSTR lpAppName, LPCSTR lpKeyName,   
    LPCSTR lpDefault, LPSTR lpReturnedString, DWORD nSize, LPCSTR lpFileName) 

    DWORD dwLen = 0; 
    QString strReturn; 
    QString strDefault, strItem, strSection, strKey; 
    strItem = ""; 
    strDefault = lpReturnedString; 
 
    QTextCodec *codec = QTextCodec::codecForName("GB2312"); 
    QSettings Setting(lpFileName, QSettings::IniFormat);     
    Setting.setIniCodec(codec);     
    strSection = QString::fromLatin1(lpAppName, strlen(lpAppName)); 
    strKey = QString::fromLatin1(lpKeyName, strlen(lpKeyName)); 
    strItem.append(strSection); 
    strItem.append("/"); 
    strItem.append(strKey); 
     strReturn = Setting.value(strItem, strDefault).toString(); 
 
    QByteArray ba = strReturn.toAscii(); 
    char *lpszData = ba.data(); 
    dwLen = strlen(lpszData); 
    dwLen = dwLen > nSize ? nSize : dwLen; 
    strncpy(lpReturnedString, lpszData, dwLen); 
    return dwLen; 
}


QT仿照MFC读取INI文件(支持中文)

标签:qt

原文地址:http://11496263.blog.51cto.com/11486263/1879499

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!