亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C++讀寫INI配置文件的類實例

2020-01-26 15:05:30
字體:
來源:轉載
供稿:網友

本文實例講述了C++讀寫INI配置文件的類。分享給大家供大家參考。具體如下:

1. IniReader.h文件:

#ifndef INIREADER_H#define INIREADER_H#include <windows.h>class CIniReader{public: CIniReader(LPCTSTR szFileName);  int ReadInteger(LPCTSTR szSection, LPCTSTR szKey, int iDefaultValue); float ReadFloat(LPCTSTR szSection, LPCTSTR szKey, float fltDefaultValue); bool ReadBoolean(LPCTSTR szSection, LPCTSTR szKey, bool bolDefaultValue); LPTSTR ReadString(LPCTSTR szSection, LPCTSTR szKey, LPCTSTR szDefaultValue);private: TCHAR m_szFileName[255];};#endif //INIREADER_H

2. IniReader.cpp文件:

#include "IniReader.h"#include <iostream>#include <windows.h>CIniReader::CIniReader(LPCTSTR szFileName){ memset(m_szFileName, 0x00, sizeof(m_szFileName)); memcpy(m_szFileName, szFileName, _tcslen(szFileName)*sizeof(TCHAR));}int CIniReader::ReadInteger(LPCTSTR szSection, LPCTSTR szKey, int iDefaultValue){ int iResult = GetPrivateProfileInt(szSection, szKey, iDefaultValue, m_szFileName);  return iResult;}float CIniReader::ReadFloat(LPCTSTR szSection, LPCTSTR szKey, float fltDefaultValue){ TCHAR szResult[255]; TCHAR szDefault[255]; float fltResult; _stprintf_s(szDefault, 255, TEXT("%f"),fltDefaultValue); GetPrivateProfileString(szSection, szKey, szDefault, szResult, 255, m_szFileName);  fltResult = (float)_tstof(szResult); return fltResult;}bool CIniReader::ReadBoolean(LPCTSTR szSection, LPCTSTR szKey, bool bolDefaultValue){ TCHAR szResult[255]; TCHAR szDefault[255]; bool bolResult; _stprintf_s(szDefault, 255, TEXT("%s"), bolDefaultValue? TEXT("True") : TEXT("False")); GetPrivateProfileString(szSection, szKey, szDefault, szResult, 255, m_szFileName);  bolResult = (_tcscmp(szResult, TEXT("True")) == 0 ||     _tcscmp(szResult, TEXT("true")) == 0) ? true : false; return bolResult;}LPTSTR CIniReader::ReadString(LPCTSTR szSection, LPCTSTR szKey, LPCTSTR szDefaultValue){ LPTSTR szResult = new TCHAR[255]; memset(szResult, 0x00, sizeof(szResult)); GetPrivateProfileString(szSection, szKey, szDefaultValue, szResult, 255, m_szFileName);  return szResult;}

3. IniWriter.h文件:

#ifndef INIWRITER_H#define INIWRITER_H#include <windows.h>class CIniWriter{public: CIniWriter(LPCTSTR szFileName);  void WriteInteger(LPCTSTR szSection, LPCTSTR szKey, int iValue); void WriteFloat(LPCTSTR szSection, LPCTSTR szKey, float fltValue); void WriteBoolean(LPCTSTR szSection, LPCTSTR szKey, bool bolValue); void WriteString(LPCTSTR szSection, LPCTSTR szKey, LPCTSTR szValue);private: TCHAR m_szFileName[255];};#endif //INIWRITER_H

4. IniWriter.cpp文件:

#include "IniWriter.h"#include <iostream>#include <windows.h> CIniWriter::CIniWriter(LPCTSTR szFileName){ memset(m_szFileName, 0x00, sizeof(m_szFileName)); memcpy(m_szFileName, szFileName, _tcslen(szFileName)*sizeof(TCHAR));}void CIniWriter::WriteInteger(LPCTSTR szSection, LPCTSTR szKey, int iValue){ TCHAR szValue[255]; _stprintf_s(szValue, 255, TEXT("%d"), iValue); WritePrivateProfileString(szSection, szKey, szValue, m_szFileName); }void CIniWriter::WriteFloat(LPCTSTR szSection, LPCTSTR szKey, float fltValue){ TCHAR szValue[255]; _stprintf_s(szValue, 255, TEXT("%f"), fltValue); WritePrivateProfileString(szSection, szKey, szValue, m_szFileName); }void CIniWriter::WriteBoolean(LPCTSTR szSection, LPCTSTR szKey, bool bolValue){ TCHAR szValue[255]; _stprintf_s(szValue, 255, TEXT("%s"), bolValue ? TEXT("True") : TEXT("False")); WritePrivateProfileString(szSection, szKey, szValue, m_szFileName); }void CIniWriter::WriteString(LPCTSTR szSection, LPCTSTR szKey, LPCTSTR szValue){ WritePrivateProfileString(szSection, szKey, szValue, m_szFileName);}

5. main.cpp文件:

#if defined(UNICODE) || defined(_UNICODE)#define tcout std::wcout#else#define tcout std::cout#endif#include <iostream>#include <windows.h>#include "IniWriter.h"#include "IniReader.h"int _tmain(int argc, _TCHAR* argv[]){ CIniWriter iniWriter(TEXT(".//initest.ini")); iniWriter.WriteString(TEXT("Setting"), TEXT("Name"), TEXT("jianxx")); iniWriter.WriteInteger(TEXT("Setting"), TEXT("Age"), 27);  iniWriter.WriteFloat(TEXT("Setting"), TEXT("Height"), 1.82f);  iniWriter.WriteBoolean(TEXT("Setting"), TEXT("Marriage"), false);  CIniReader iniReader(TEXT(".//initest.ini")); LPTSTR szName = iniReader.ReadString(TEXT("Setting"), TEXT("Name"), TEXT(""));   int iAge = iniReader.ReadInteger(TEXT("Setting"), TEXT("Age"), 25);  float fltHieght = iniReader.ReadFloat(TEXT("Setting"), TEXT("Height"), 1.80f);  bool bMarriage = iniReader.ReadBoolean(TEXT("Setting"), TEXT("Marriage"), true);  tcout<<"Name:"<<szName<<std::endl  <<"Age:"<<iAge<<std::endl   <<"Height:"<<fltHieght<<std::endl   <<"Marriage:"<<bMarriage<<std::endl;  delete szName;  return 1;  }

希望本文所述對大家的C++程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久夜色精品国产欧美乱| 国内揄拍国内精品少妇国语| 丁香五六月婷婷久久激情| 中文字幕亚洲综合| 亚洲人成电影网站| 久久久久久网站| 欧美性生活大片免费观看网址| 亚洲欧美日韩精品| 欧美精品久久一区二区| 亚洲在线视频观看| 中文字幕日韩在线播放| 91精品久久久久久久久久久久久| 日韩精品视频在线| 久久91超碰青草是什么| 久久亚洲私人国产精品va| 久久97精品久久久久久久不卡| www.日韩免费| 亚洲乱码一区av黑人高潮| 国产成人久久久精品一区| 欧美激情视频网| 欧美电影在线观看网站| 日韩亚洲欧美中文在线| 在线视频一区二区| 91网站免费看| 亚洲а∨天堂久久精品9966| 久久精品国产亚洲7777| 日韩极品精品视频免费观看| 精品国产91久久久| 欧美另类精品xxxx孕妇| 久久精品色欧美aⅴ一区二区| 久久国产精品偷| 91亚洲精华国产精华| 欧美日韩国产va另类| 国产午夜精品美女视频明星a级| 亚洲人成伊人成综合网久久久| 亚洲成人网在线观看| 欧美成人精品h版在线观看| 精品久久久免费| 欧美成人免费观看| 精品高清一区二区三区| 中文字幕欧美视频在线| 色综合亚洲精品激情狠狠| 久久久999成人| 欧美精品福利在线| 亚洲最大的av网站| 日韩精品欧美国产精品忘忧草| 九九久久综合网站| 久久久精品一区二区| 成年人精品视频| 亚洲三级黄色在线观看| 欧美性猛交xxxx乱大交3| 日本高清视频精品| 亚洲综合小说区| 亚洲精品在线91| 亚洲国产日韩一区| 国产成人av网址| 国产成人一区二区三区小说| 国产偷亚洲偷欧美偷精品| 精品久久久久久久中文字幕| 久久电影一区二区| 亚洲黄色成人网| 精品国产老师黑色丝袜高跟鞋| 精品国产区一区二区三区在线观看| 国产美女久久精品| 成人黄色免费看| 欧美视频在线观看免费网址| 亚洲字幕一区二区| 久久久久久国产精品美女| 亚洲色图在线观看| 日韩精品福利网站| 国产精品国产亚洲伊人久久| 秋霞成人午夜鲁丝一区二区三区| 久精品免费视频| 欧美国产日本在线| 色婷婷av一区二区三区在线观看| 亚洲精品久久久久久久久久久久| 日韩中文字幕视频在线观看| 欧美午夜丰满在线18影院| 欧美日韩国产专区| 日本欧美在线视频| 国产精品久久久久7777婷婷| 国产专区欧美专区| 国产日韩欧美在线观看| 欧美在线播放视频| 亚洲护士老师的毛茸茸最新章节| 午夜精品一区二区三区在线| 成人网页在线免费观看| 欧美成人精品在线视频| 91精品国产色综合久久不卡98| 国产日韩精品综合网站| 国产一区二区三区直播精品电影| 国产在线精品一区免费香蕉| 久久福利视频导航| 中文字幕在线观看亚洲| 国产精品免费观看在线| 欧美有码在线观看视频| 91亚洲永久免费精品| 亚洲精品小视频在线观看| 欧美日韩国产精品专区| 92版电视剧仙鹤神针在线观看| 亚洲天堂网在线观看| 国产成人久久久精品一区| 97精品国产97久久久久久春色| 国产成人精品在线观看| 久久精品成人欧美大片古装| 欧美日本高清视频| 国产欧美久久久久久| 98午夜经典影视| 久久久久久久久久婷婷| 久久久久久久久久久av| 疯狂欧美牲乱大交777| 欧美人与物videos| 久久免费视频在线观看| 日韩av在线免费播放| 91精品国产一区| 最近2019好看的中文字幕免费| 欧美激情xxxx| 91国内在线视频| 国产97在线观看| 久久国产精品久久久久久| 久久影院免费观看| 久久久人成影片一区二区三区| 久久精品久久精品亚洲人| 国产在线a不卡| 亚洲精选中文字幕| 亚洲自拍欧美色图| 欧美日韩免费区域视频在线观看| 91精品国产自产在线观看永久| 日韩高清有码在线| 91在线观看免费| 亚洲午夜久久久久久久| 综合网日日天干夜夜久久| 欧美大成色www永久网站婷| 日韩中文字幕视频| 成人激情综合网| 国产精品丝袜白浆摸在线| yellow中文字幕久久| 福利精品视频在线| 中文字幕亚洲欧美日韩高清| 国产高清视频一区三区| 色av中文字幕一区| 亚洲欧美制服综合另类| 亚洲欧美变态国产另类| 欧美疯狂xxxx大交乱88av| 亚洲香蕉在线观看| 成人黄色免费网站在线观看| 日韩色av导航| 久久视频免费观看| 久久精品国产成人| 51久久精品夜色国产麻豆| 精品国产乱码久久久久久虫虫漫画| 国产精品色视频| 亚洲精品欧美一区二区三区| zzijzzij亚洲日本成熟少妇| 久久精品亚洲精品| 国产精品久久久久久久久久三级| 久久在精品线影院精品国产| 久久亚洲国产精品成人av秋霞| 精品无人区乱码1区2区3区在线| 亚洲综合最新在线| 亚洲日本aⅴ片在线观看香蕉| 日韩国产精品视频| 一区二区在线免费视频| 在线精品视频视频中文字幕|