用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - vb代码库

VB读写INI文件

2013-01-29 作者: 竹菜板举报

[vb]代码库

标准模块:
=============================
Option Explicit

Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
Public iniFileName As String '配置文件的名称,一般在窗体load事件中初始化

'获取Ini的值,注意DefString表示如果不存在对应的KeyWord就设置此项为DefString,为空时不处理
Function GetIniS(ByVal SectionName As String, ByVal KeyWord As String, Optional ByVal DefString As String) As String
    Dim ResultString As String * 144, Temp%
    Dim s$, i%
    Temp% = GetPrivateProfileString(SectionName, KeyWord, "", ResultString, 144, iniFileName)
    '检索关键词的值
    If Temp% > 0 Then '关键词的值不为空
        For i = 1 To 144
            If Asc(Mid$(ResultString, i, 1)) <> 0 Then
                s = s & Mid$(ResultString, i, 1)
            End If
        Next
    Else
        Temp% = WritePrivateProfileString(SectionName, KeyWord, DefString, iniFileName) '将缺省值写入INI文件
        s = DefString
    End If
    GetIniS = Trim(s)  '去除空格
End Function
'写入字符串值,返回值如果是0表示操作失败
Public Function SetIniS(ByVal SectionName As String, ByVal KeyWord As String, ByVal ValStr As String) As Boolean
    SetIniS = WritePrivateProfileString(SectionName, KeyWord, ValStr, iniFileName)
End Function
'清除 Section"段"
Public Function DelIniSec(ByVal SectionName As String) As Boolean
    DelIniSec = WritePrivateProfileString(SectionName, 0&, "", iniFileName)
End Function
''清除KeyWord"键"
Public Function DelIniKey(ByVal SectionName As String, ByVal KeyWord As String) As Boolean
    DelIniKey = WritePrivateProfileString(SectionName, KeyWord, 0&, iniFileName)
End Function

=============================

调用方法:

读取:
iniFileName = "D:\XXX.ini"   '设置ini文件的完整路径(也可以用其它扩展名)
Form1.Caption = GetIniS("设置", "窗口标题")   

写入:
Dim INI As String
iniFileName = "D:\XXX.ini"   '设置ini文件的完整路径(也可以用其它扩展名)
INI = SetIniS("设置", "窗口标题", Form2.Caption)   '在"设置"-"窗口标题"写入了Form2的标题
INI = SetIniS("设置", "窗口标题", "")   '只删除了"窗口标题"下的值。

删除:
Dim INI As String
iniFileName = "D:\XXX.ini"   '设置ini文件的完整路径(也可以用其它扩展名)
INI = DelIniSec("设置")   '删除整个字段。
INI=DelIniKey("设置", "窗口标题") 

========================
附INI文件格式

[section]
name = value

如:
[设置]
窗口标题="Windows Internet Explorer"


网友评论    (发表评论)

共2 条评论 1/1页

发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...