VB6.0读写INI文件的四个函数

这是一个关于如何在VB6.0中读取和写入INI配置文件的函数介绍。提供了四个函数,包括GetIniTF、WriteIniTF、GetIniStr和WriteIniStr,分别用于读取和写入布尔值以及字符串类型的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
  1.     
  2. 读写INI文件的四个函数
  3. 发表日期:2006-08-23作者:[转贴] 出处:  
  4. '文件名SourceDB.ini文件
  5. Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As StringByVal lpKeyName As Any, ByVal lpDefault As StringByVal lpReturnedString As StringByVal nSize As LongByVal lpFileName As StringAs Long
  6. Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As StringByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As StringAs Long
  7.  
  8. '以下两个函数,读/写ini文件,固定节点setting,in_key为写入/读取的主键
  9. '仅仅针对是非值
  10. 'Y:yes,N:no,E:error
  11. Public Function GetIniTF(ByVal In_Key As StringAs Boolean
  12. On Error GoTo GetIniTFErr
  13. GetIniTF = True
  14. Dim GetStr As String
  15. GetStr = VBA.String(128, 0)
  16. GetPrivateProfileString "Setting", In_Key, "", GetStr, 256, App.Path & "/SourceDB.ini"
  17. GetStr = VBA.Replace(GetStr, VBA.Chr(0), "")
  18. If GetStr = "1" Then
  19. GetIniTF = True
  20. GetStr = ""
  21. Else
  22. GoTo GetIniTFErr
  23. End If
  24. Exit Function
  25. GetIniTFErr:
  26. Err.Clear
  27. GetIniTF = False
  28. GetStr = ""
  29. End Function
  30.  
  31. Public Function WriteIniTF(ByVal In_Key As StringByVal In_Data As BooleanAs Boolean
  32. On Error GoTo WriteIniTFErr
  33. WriteIniTF = True
  34. If In_Data = True Then
  35. WritePrivateProfileString "Setting", In_Key, "1", App.Path & "/SourceDB.ini"
  36. Else
  37. WritePrivateProfileString "Setting", In_Key, "0", App.Path & "/SourceDB.ini"
  38. End If
  39. Exit Function
  40. WriteIniTFErr:
  41. Err.Clear
  42. WriteIniTF = False
  43. End Function
  44. '以下两个函数,读/写ini文件,不固定节点,in_key为写入/读取的主键
  45. '针对字符串值
  46. '空值表示出错
  47. Public Function GetIniStr(ByVal AppName As StringByVal In_Key As StringAs String
  48. On Error GoTo GetIniStrErr
  49. If VBA.Trim(In_Key) = "" Then
  50. GoTo GetIniStrErr
  51. End If
  52. Dim GetStr As String
  53. GetStr = VBA.String(128, 0)
  54. GetPrivateProfileString AppName, In_Key, "", GetStr, 256, App.Path & "/SourceDB.ini"
  55. GetStr = VBA.Replace(GetStr, VBA.Chr(0), "")
  56. If GetStr = "" Then
  57. GoTo GetIniStrErr
  58. Else
  59. GetIniStr = GetStr
  60. GetStr = ""
  61. End If
  62. Exit Function
  63. GetIniStrErr:
  64. Err.Clear
  65. GetIniStr = ""
  66. GetStr = ""
  67. End Function
  68.  
  69. Public Function WriteIniStr(ByVal AppName As StringByVal In_Key As StringByVal In_Data As StringAs Boolean
  70. On Error GoTo WriteIniStrErr
  71. WriteIniStr = True
  72. If VBA.Trim(In_Data) = "" Or VBA.Trim(In_Key) = "" Or VBA.Trim(AppName) = "" Then
  73. GoTo WriteIniStrErr
  74. Else
  75. WritePrivateProfileString AppName, In_Key, In_Data, App.Path & "/SourceDB.ini"
  76. End If
  77. Exit Function
  78. WriteIniStrErr:
  79. Err.Clear
  80. WriteIniStr = False
  81. End Function
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值