ini.cpp
上传用户:maxiaolivb
上传日期:2022-06-07
资源大小:915k
文件大小:2k
源码类别:

游戏引擎

开发平台:

Visual C++

  1. /*
  2. ** Haaf's Game Engine 1.5
  3. ** Copyright (C) 2003-2004, Relish Games
  4. ** hge.relishgames.com
  5. **
  6. ** Core functions implementation: ini file
  7. */
  8. #include "hge_impl.h"
  9. void CALL HGE_Impl::Ini_SetInt(const char *section, const char *name, int value)
  10. {
  11. char buf[256];
  12. if(szIniFile[0]) {
  13. sprintf(buf,"%d",value);
  14. WritePrivateProfileString(section, name, buf, szIniFile);
  15. }
  16. }
  17. int CALL HGE_Impl::Ini_GetInt(const char *section, const char *name, int def_val)
  18. {
  19. char buf[256];
  20. if(szIniFile[0]) {
  21. if(GetPrivateProfileString(section, name, "", buf, sizeof(buf), szIniFile))
  22. { return atoi(buf); }
  23. else { return def_val; }
  24. }
  25. return def_val;
  26. }
  27. void CALL HGE_Impl::Ini_SetFloat(const char *section, const char *name, float value)
  28. {
  29. char buf[256];
  30. if(szIniFile[0]) {
  31. sprintf(buf,"%f",value);
  32. WritePrivateProfileString(section, name, buf, szIniFile);
  33. }
  34. }
  35. float CALL HGE_Impl::Ini_GetFloat(const char *section, const char *name, float def_val)
  36. {
  37. char buf[256];
  38. if(szIniFile[0]) {
  39. if(GetPrivateProfileString(section, name, "", buf, sizeof(buf), szIniFile))
  40. { return (float)atof(buf); }
  41. else { return def_val; }
  42. }
  43. return def_val;
  44. }
  45. void CALL HGE_Impl::Ini_SetString(const char *section, const char *name, const char *value)
  46. {
  47. if(szIniFile[0]) WritePrivateProfileString(section, name, value, szIniFile);
  48. }
  49. char* CALL HGE_Impl::Ini_GetString(const char *section, const char *name, const char *def_val)
  50. {
  51. if(szIniFile[0]) GetPrivateProfileString(section, name, def_val, szIniString, sizeof(szIniString), szIniFile);
  52. else strcpy(szIniString, def_val);
  53. return szIniString;
  54. }