Access交流网
  • 设为首页|收藏本站|繁体中文|手机版
  •     
  • Access培训-Access开发平台-Access行业开发

  • 首页
  • 资讯
  • 技巧
  • 源码
  • 行业
  • 资源
  • 产品
  • 活动
  • 培训
  • 招聘
  • 论坛
  • 商城
  • 关于

培训

Access企业培训(现场)
Access在线培训

Access中级培训

Access高级培训

Access定制培训

Access树控件与BOM高级技巧

Access公开课
Access免费公开课视频
Access培训(VIP)
Access培训优惠信息

热门文章

  • Access系统设置及系统..
  • Access列表框的高级应..
  • Access窗体控件-默认..
  • access图片分页展示及..
  • Access专业工资条打印..
  • access图片文件保存到..

最新文章

  • Access自动播音员-A..
  • Access智能搜索组合框..
  • Access自动执行宏的妙..
  • access图片分页展示及..
  • 通用读取文本文件模块-Ac..
  • Access通用TAB键和..

联系方式

Access交流网

电  话:0760-88315075
热  线:0760-88315075

邮  编:528463
咨询QQ:1918333016
营销QQ:4008553990

Email:1918333016@qq.com

网  址:www.access-cn.com

当前位置:首页 > 培训 > Access培训(VIP)
Access培训(VIP)

通用读取文本文件模块-Access经典源码剖析

 
Access主题 主题:Access通用读取文本文件模块-高手之路                  听课人数:70多人      
Access主讲 主讲:王宇虹                       演讲时间:2014-07-02 15:30 至 2014-07-02 16:30
Access培训内容 讲课内容简介:                   Access培训报名: http://www.office-cn.net/thread-118946-1-1.html
  讲解如何读写txt文本文件,包括任何需要读写文本文件场景,如配置文件,INI文件 ,保存软件的版本号 最近软件更新日期,保存服务器名称 用户名 密码,把程序出错的日志写到文本文件, 把执行结果打印到文本文件 等等相关内容
 培训优势:使用新版Access2013+思维导图模式+Access源码剖析+在线课堂+PPT课件  培训
 培训目标:让你 听得懂 学得会 记得住 用得上             要求:有一定的Access 或 VBA的基础 
 

 

clip0058

Access通用读取文本文件模块


 

 

application_key 功能描述:

 

  • 可以读取INI txt文本文件

  • 可以把记录写进INI txt文本

  • 把系统相关信息从INI txt读写

 

 

application_key  行业应用场景:

 
  •   在任何需要读写文本文件场景

  •   配置文件 

  •   INI文件 

  •   保存软件的版本号 最近软件更新日期

  •   保存服务器名称 用户名 密码

  •   把程序出错的日志写到文本文件 

  •   把执行结果打印到文本文件 

 

application_key  界面预览:

 

     主界面

 

 

application_key  源码思维导图(脑图):

 

     思维导图

 

Access教程视频Access通用读取文本文件模块 -- Access经典源码剖析思维导图在线播放

可直接展开和收缩思维导图中的每个节点来浏览,也可使用下面的放大 缩小 折叠 定位焦点 全页显示 查找关键字等功能
 

 

 

application_key  Access培训笔记:

 

  经典源码剖析系列 通用文本文件读写 Office中国-王宇虹

1 应用场景

1.1 在任何需要读写文本文件场景

1.2 配置文件

1.3 INI文件

1.4 保存软件的版本号 最近软件更新日期

1.5 保存服务器名称 用户名 密码

1.6 把程序出错的日志写到文本文件

1.7 把执行结果打印到文本文件

2 API

2.1 GetPrivateProfileString

2.2 WritePrivateProfileString

3 模块 源码剖析

3.1 gf_AddToIni

3.1.1 写入键 值

3.2 gf_GetKeyVal

3.2.1 读取指定键 的值

判断INI文件是否存在

返加空

GetPrivateProfileString

3.3 gf_RenameKey

3.3.1 修改 键名

3.4 gf_RenameSection

3.4.1 修改 节名

3.5 gf_NumKeys

3.5.1 获取一个节有多少键值

4 文件格式

4.1 文件名要求INI扩展名

4.2 节名

4.2.1 [ ]

[General]

4.3 键名

4.3.1 =符号前面

Company=

4.4 值

4.4.1 =符号后面

Company=Office中国

 

 

application_key  相关链接:

 

1. 直接超值购买:

       点击购买:  Button 

       包含:Access示例完整源码+实现思路与代码讲解高清视频+Access培训课件    绝对低价超值

 

2. 购买前咨询:

    

    在线咨询QQ:1918333016

    企业热线QQ:4008553990 (使用QQ搜索: 搜索服务)

    更多联系方式:http://www.office-cn.net/t/training/officecontact.htm

 

application_key  部分源码预览:

 

  源码

 

Option Compare Database
Option Explicit
 
'访问INI文件API函数开始----------------------------------------------------------
Public 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
Public Declare Function WritePrivateProfileString& Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal AppName$, ByVal KeyName$, ByVal keydefault$, ByVal filename$)
'访问INI文件函数API结束----------------------------------------------------------
 
'=============================================================================================
'函数名称: gf_GetKeyVal  (从INI文件指定节与子键中获得键值)  版本:1.01
'调用示例: gf_GetKeyVal(strFileName,strSection,strKey)
'
'输入参数: (必需)strFileName   String      INI文件完整路径
'           (必需)strSection    String      节区名
'           (必需)strKey    String      子键名
'返    回:
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: INI
'推荐指数: 4
'难度等级: 2
'适应场合: ini
'说    明: INI
'=============================================================================================
'GUID: A71FA48B-B056-486B-AB43-624680946B06 编码:1223233325 创建:2013/02/26 更新:2013/02/26
'=============================================================================================
Public Function gf_GetKeyVal(ByVal strFileName As String, ByVal strSection As String, ByVal strKey As String)
   On Error GoTo Err_Handler
   Dim strRetVal        As String
   Dim strWorked        As Integer
   '判断当前路径INI文件是否存在
   If Dir(strFileName) = "" Then
      'MsgBox "未发现INI文件,请确认文件名或路径是否正确 !", vbCritical, "系统提示:": Exit Function
      gf_GetKeyVal = ""
      Exit Function
   End If
   '.....省略.......
   '.................................
   strWorked = GetPrivateProfileString(strSection, strKey, "", strRetVal, Len(strRetVal), strFileName)
   
   '判断键值字符数,0则键值为空键值,否则赋值函数输出获得键值
   If strWorked = 0 Then
      gf_GetKeyVal = ""
   Else
      'InStr函数用于获得指定字符的起始位置,Chr(0)代表空字符
      '.....省略.......
      '.................................
   End If
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_AddToINI  (可以实现创建抱括 INI文件本身,以及节区、子键、键值)  版本:1.01
'调用示例: gf_AddToINI(strFileName,strSection,strKey,strKeyValue)
'
'输入参数: (必需)strFileName   String      INI文件完整路径
'           (必需)strSection    String      节区名
'           (必需)strKey    String      子键名
'           (必需)strKeyValue   String      键值
'返    回: Integer
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: INI
'推荐指数: 2
'难度等级: 2
'适应场合: INI
'说    明: 可以实现创建抱括 INI文件本身,以及节区、子键、键值
'=============================================================================================
'GUID: B64717EA-D7E0-43B5-BDE3-8A74D80B32DD 编码:1223233325 创建:2013/02/26 更新:2013/02/26
'=============================================================================================
Public Function gf_AddToINI(ByVal strFileName As String, ByVal strSection As String, ByVal strKey As String, ByVal strKeyValue As String) As Integer
   On Error GoTo Err_Handler
   '调用API函数不仅能实现(创建INI文件,添加新的节,添加新的子键,添加对应键值)
   WritePrivateProfileString strSection, strKey, strKeyValue, strFileName
   '函数返回1则表示操作成功,返回0为不成功
   gf_AddToINI = 1
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_DeleteSection  (删除指定节区及其所属所有子键(含键值))  版本:1.01
'调用示例: gf_DeleteSection(strFileName,strSection)
'
'输入参数: (必需)strFileName   String      INI文件完整路径
'           (必需)strSection    String      节区名
'返    回: Integer
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: 删除
'推荐指数: 1
'难度等级: 1
'适应场合: ini
'说    明: 删除指定节区及其所属所有子键(含键值)
'=============================================================================================
'GUID: C546004B-FE39-413C-AFD6-545F91A1B252 编码:1223233325 创建:2013/02/26 更新:2013/02/26
'=============================================================================================
Public Function gf_DeleteSection(ByVal strFileName As String, ByVal strSection As String) As Integer
   On Error GoTo Err_Handler
   '判断INI文件是否存在,不存在提示并退出函数
   If Dir(strFileName) = "" Then MsgBox "未发现INI文件,请确认文件名或路径是否正确 !", vbCritical, "系统提示:": Exit Function
    '.................................
   '.................................
   WritePrivateProfileString strSection, vbNullString, vbNullString, strFileName
   '赋值函数输出为1,表示操作成功.
   gf_DeleteSection = 1
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_SectionExists  (检测指定节区是否存在)  版本:1.01
'调用示例: gf_SectionExists(strFileName,strSection)
'
'输入参数: (必需)strFileName   String      INI文件名及完整路径
'           (必需)strSection    String      节区名
'返    回: Boolean
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: 节区名
'推荐指数: 1
'难度等级: 1
'适应场合: ini
'说    明: 检测指定节区是否存在
'=============================================================================================
'GUID: 11C8CF93-A34C-42D3-999F-147303F45FDF 编码:1223233325 创建:2013/02/26 更新:2013/02/26
'=============================================================================================
Public Function gf_SectionExists(ByVal strFileName As String, ByVal strSection As String) As Boolean
   On Error GoTo Err_Handler
   Dim strInputData     As String
   '判断INI文件是否存在,不存在提示并退出函数
   If Dir(strFileName) = "" Then MsgBox "未找到INI文件,请确认其是否存在基 ! ", vbCritical, "系统提示:": Exit Function
   '打开INI文件,进行I/O操作
   Open strFileName For Input As #11
      '循环读取INI文件内容
      Do While Not EOF(11)
         '逐行读取内容
         Line Input #11, strInputData
         '比对读取信息是否为指定节区,是则函数输出为真,并退出循环
           '.................................
          '.................................
      Loop
      '关闭对应文号
   Close #11
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_DeleteKey  (删除指定子键(含键值))  版本:1.01
'调用示例: gf_DeleteKey(strFileName,strSection,strKey)
'
'输入参数: (必需)strFileName   String      INI文件完整路径
'           (必需)strSection    String      节区名
'           (必需)strKey    String      子键名
'返    回: Integer
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: 删除
'推荐指数: 3
'难度等级: 2
'适应场合: ini
'说    明: 删除指定子键(含键值)
'=============================================================================================
'GUID: A4BDCB09-973F-4B94-BB2B-ABCD6488BA47 编码:1223233325 创建:2013/02/26 更新:2013/02/26
'=============================================================================================
Public Function gf_DeleteKey(ByVal strFileName As String, ByVal strSection As String, ByVal strKey As String) As Integer
   On Error GoTo Err_Handler
   '判断INI文件是否存在,不存在提示并退出函数
   If Dir(strFileName) = "" Then MsgBox "未找到INI文件,请确认其是否存在基 ! ", vbCritical, "系统提示": Exit Function
   '判断指定节区是否存在,不存在则提示并退出函数
   If Not gf_SectionExists(strFileName, strSection) Then MsgBox "指定操作节区 [" & strSection & "] 未发现. " & vbCrLf & _
                   '.................................
                   '.................................
   '函数输出为1,表示操作成功.
   gf_DeleteKey = 1
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_DeleteKeyValue  (删除指定子键键值)  版本:1.01
'调用示例: gf_DeleteKeyValue(strFileName,strSection,strKey)
'
'输入参数: (必需)strFileName   String      INI文件完整路径
'           (必需)strSection    String      节区名
'           (必需)strKey    String      子键名
'返    回: Integer
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: 删除
'推荐指数: 1
'难度等级: 1
'适应场合: ini
'说    明: 删除指定子键键值
'=============================================================================================
'GUID: 6DC9D628-4295-4852-9B25-6A736FF31CD9 编码:1223233325 创建:2013/02/26 更新:2013/02/26
'=============================================================================================
Public Function gf_DeleteKeyValue(ByVal strFileName As String, ByVal strSection As String, ByVal strKey As String) As Integer
   On Error GoTo Err_Handler
   '判断INI文件是否存在,不存在提示并退出函数
   If Dir(strFileName) = "" Then MsgBox "未找到INI文件,请确认其是否存在! ", vbCritical, "系统提示:": Exit Function
   '判断指定节区是否存在,不存则提示并退出函数
   If Not gf_SectionExists(strFileName, strSection) Then MsgBox "指定操作节区 [" & strSection & "] 未发现. " & vbCrLf & _
                    '.................................
                  '.................................
   gf_DeleteKeyValue = 1
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_TotalSections  (获得INI文件节区总数)  版本:1.01
'调用示例: gf_TotalSections(strFileName)
'
'输入参数: (必需)strFileName   String      INI文件完整路径
'返    回: Long
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: INI
'推荐指数: 3
'难度等级: 3
'适应场合: 获得INI文件节区总数
'说    明: 获得INI文件节区总数
'=============================================================================================
'GUID: 375DE377-0CB4-4C7F-9A76-1BCAEED1224B 编码:1223233325 创建:2013/02/27 更新:2013/02/27
'=============================================================================================
Public Function gf_TotalSections(ByVal strFileName As String) As Long
   On Error GoTo Err_Handler
   Dim intCounter       As Integer
   Dim strInputData     As String
   '判断INI文件是否存在,不存在提示并退出函数
   If Dir(strFileName) = "" Then MsgBox "未找到INI文件,请确认其是否存在! ", vbCritical, "系统提示:": Exit Function
   '打开INI文件,进行I/O 操作
   Open strFileName For Input As #1
      '循环读取文号1中节区信息,并计数
      Do While Not EOF(1)
         '逐行读取内容
         Line Input #1, strInputData
          '.................................
          '.................................
      Loop
      '关闭对应文号
   Close #1
   '输出节区总数
   gf_TotalSections = intCounter
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_TotalKeys  (获得INI文件节区总数)  版本:1.01
'调用示例: gf_TotalKeys(strFileName)
'
'输入参数: (必需)strFileName   String      INI文件完整路径
'返    回: Long
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: INI
'推荐指数: 2
'难度等级: 3
'适应场合: INI
'说    明: 获得INI文件节区总数
'=============================================================================================
'GUID: ADB2B42F-EEFB-4717-9F70-DED40608BBE1 编码:1223233325 创建:2013/02/27 更新:2013/02/27
'=============================================================================================
Public Function gf_TotalKeys(ByVal strFileName As String) As Long
   On Error GoTo Err_Handler
   Dim intCounter       As Integer
   Dim strInputData     As String
   Dim intstrLooper     As Integer
   
   '判断INI文件是否存在,不存在提示并退出函数
   If Dir(strFileName) = "" Then MsgBox "未找到INI文件,请确认其是否存在! ", vbCritical, "系统提示:": Exit Function
   '打开INI文件,#2为文号,进行I/O 操作
   Open strFileName For Input As #2
      '循环读取文号2中子键信息,并计数
      Do While Not EOF(2)
          '.................................
          '.................................
         If gf_IsKey(strInputData) Then intCounter = intCounter + 1
      Loop
      '关闭对应文号
   Close #2
   '输出子键总数
   gf_TotalKeys = intCounter
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_KeyExists  (通过指定节区名来确认子键是否存在)  版本:1.01
'调用示例: gf_KeyExists(strFileName,strSection,strKey)
'
'输入参数: (必需)strFileName   String      INI文件名及完整路径
'           (必需)strSection    String      节区名
'           (必需)strKey    String      子键名
'返    回: Boolean
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: INI
'推荐指数: 3
'难度等级: 3
'适应场合: INI
'说    明: 通过指定节区名来确认子键是否存在
'=============================================================================================
'GUID: 79CB701D-F4D7-41F0-B3D4-BA2F2302241C 编码:1223233325 创建:2013/02/27 更新:2013/02/27
'=============================================================================================
Public Function gf_KeyExists(ByVal strFileName As String, ByVal strSection As String, ByVal strKey As String) As Boolean
   On Error GoTo Err_Handler
   Dim blnInZone        As Boolean
   Dim strInputData     As String
   Dim strLooper        As Integer
   '判断INI文件是否存在,不存在提示并退出函数
   If Dir(strFileName) = "" Then MsgBox "未找到INI文件,请确认其是否存在! ", vbCritical, "系统提示:": Exit Function
   '判断指定节区是否存在,不存在则提示并退出函数
   If Not gf_SectionExists(strFileName, strSection) Then MsgBox "指定操作节区 [" & strSection & "] 未发现. " & vbCrLf & _
                  "请确认节区名是否正确,注意区分大小写.", vbInformation, "系统提示:": Exit Function
   '打开INI文件,进行I/O操作
   Open strFileName For Input As #9
      '循环获取INI文件信息
      Do While Not EOF(9)
         '逐行读取
         Line Input #9, strInputData
         
         If blnInZone Then
            '判断是否为有效子键,是则对比是否为要查找的子键 & _
                           找到则输出函数为真
            If gf_IsKey(strInputData) Then
                     '.................................
                    '.................................
            ElseIf gf_IsSection(strInputData) Then
               gf_KeyExists = False
               Exit Do
            End If
         Else
            '判断是否为指定节区,是否指定标志为真
            If strInputData = "[" & strSection & "]" Then blnInZone = True
         End If
      Loop
   Close #9
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_IsSection  (确认节区是否为有效节区)  版本:1.01
'调用示例: gf_IsSection(strTextLine)
'
'输入参数: (必需)strTextLine   String      节区字输串
'返    回: Boolean
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: 有效节区
'推荐指数: 2
'难度等级: 3
'适应场合: int
'说    明: 确认节区是否为有效节区
'=============================================================================================
'GUID: F9C0888C-21D7-4B3E-BBAD-FB2073524D83 编码:1223233325 创建:2013/02/27 更新:2013/02/27
'=============================================================================================
Public Function gf_IsSection(ByVal strTextLine As String) As Boolean
   On Error GoTo Err_Handler
   Dim strFirstChar     As String
   Dim strLastChar      As String
   '判断字符串是否为空,空则退出函数
   If strTextLine = "" Then Exit Function
   '获得字符串第一个字符
   strFirstChar = Mid(strTextLine, 1, 1)
      '.................................
     '.................................
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_IsKey  (确认是否为有效子键)  版本:1.01
'调用示例: gf_IsKey(strTextLine)
'
'输入参数: (必需)strTextLine   String      子键字符串
'返    回: Boolean
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: 有效子键
'推荐指数: 1
'难度等级: 1
'适应场合: ini
'说    明: 确认是否为有效子键
'=============================================================================================
'GUID: 49628EC0-2468-416D-A5F4-B341D8250D91 编码:1223233325 创建:2013/02/27 更新:2013/02/27
'=============================================================================================
Public Function gf_IsKey(ByVal strTextLine As String) As Boolean
   On Error GoTo Err_Handler
   Dim intLooper        As Integer
   '1到字符数循环,看是否字符中是否含有"="等号,有则为有效子键,并退出函数
     '.................................
     '.................................
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_NumKeys  (获得指定节区中子键数)  版本:1.01
'调用示例: gf_NumKeys(strFileName,strSection)
'
'输入参数: (必需)strFileName   String      INI文件完整路径
'           (必需)strSection    String      节区名
'返    回: Integer
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: 子键数
'推荐指数: 3
'难度等级: 4
'适应场合: ini
'说    明: 获得指定节区中子键数
'=============================================================================================
'GUID: B1FFC878-8AAC-4084-9EC2-B2CF0F415E94 编码:1223233325 创建:2013/02/27 更新:2013/02/27
'=============================================================================================
Public Function gf_NumKeys(ByVal strFileName As String, ByVal strSection As String) As Integer
   On Error GoTo Err_Handler
   Dim intCounter       As Integer
   Dim strInputData     As String
   Dim intLooper        As Integer
   Dim blnInZone        As Boolean
   
   '判断INI文件是否存在,不存在提示并退出函数
   If Dir(strFileName) = "" Then MsgBox "未找到INI文件,请确认其是否存在 ! ", vbCritical, "系统提示:": Exit Function
   '判断指定节区是否为有效节区名,非有效节区名则提示并退出函数
   If Not gf_SectionExists(strFileName, strSection) Then MsgBox "指定操作节区 [" & strSection & "] 未发现. " & vbCrLf & _
                  "请确认节区名是否正确,注意区分大小写.", vbInformation, "系统提示:": Exit Function
   '初始化标志
   blnInZone = False
   '打开INI文件,#3为文号,进行I/O 操作
   Open strFileName For Input As #3
      '循环读取文号3中相关子键信息,并计数
      Do While Not EOF(3)
         '逐行读取内容
         Line Input #3, strInputData
         
         '标志为真并进行如下操作
         If blnInZone Then
            '判断是否为指定节区,指针是否移动最后一条记录
            If gf_IsSection(strInputData) Or EOF(3) Then
                   '.................................
                  '.................................
            Else
               '判断是否为有效子键,是则计数
               If gf_IsKey(strInputData) Then intCounter = intCounter + 1
            End If
         Else
            '判断是否为指定节区,是则设定标志为真
            If strInputData = "[" & strSection & "]" Then
               blnInZone = True
            End If
         End If
      Loop
      '关闭对应文号
   Close #3
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_RenameSection  (对指定节区重新命名)  版本:1.01
'调用示例: gf_RenameSection(strFileName,strSectionName,strNewSectionName)
'
'输入参数: (必需)strFileName   String      INI文件完整路径
'           (必需)strSectionName    String      节区名
'           (必需)strNewSectionName String      新节区名
'返    回: Integer
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: 重新命名
'推荐指数: 2
'难度等级: 2
'适应场合: INI
'说    明: 对指定节区重新命名
'=============================================================================================
'GUID: E190E57E-3F78-44EF-8BF4-E2D413B725BA 编码:1223233325 创建:2013/02/27 更新:2013/02/27
'=============================================================================================
Public Function gf_RenameSection(ByVal strFileName As String, ByVal strSectionName As String, ByVal strNewSectionName As String) As Integer
   On Error GoTo Err_Handler
   Dim strTopKeys       As String
   Dim strBotkeys       As String
   Dim intLooper        As Integer
   Dim strInputData     As String
   Dim blnInZone        As Boolean
   Dim strKey1          As String
   Dim strKey2          As String
   
   '判断INI文件是否存在,不存在提示并退出函数
   If Dir(strFileName) = "" Then MsgBox "未找到INI文件,请确认其是否存在 ! ", vbCritical, "系统提示:": Exit Function
   '判断指定节区是否为有效节区名,非有效节区名则提示并退出函数
   If Not gf_SectionExists(strFileName, strSectionName) Then MsgBox "指定操作节区 [" & strSectionName & "] 未发现. " & vbCrLf & _
                  "请确认节区名是否正确,注意区分大小写.", vbInformation, "系统提示:": Exit Function
   '判断更新节区名是否存,存在则提示并退出函数
   If gf_SectionExists(strFileName, strNewSectionName) Then MsgBox "[" & strNewSectionName & "] 节名已存在. 请重新输入节区名.", vbInformation, "系统提示:": gf_RenameSection = 0: Exit Function
   '打开INI文件,并进行I/O操作
   Open strFileName For Input As #4
      '循环读取INI信息
      Do While Not EOF(4)
         '逐行读取信息并赋值给strInputData变量
         Line Input #4, strInputData
         If blnInZone Then
            '将原节区、子键(键值)读出,并赋值给strBotkeys变量
            If strBotkeys = "" Then strBotkeys = strInputData Else strBotkeys = strBotkeys & vbCrLf & strInputData
            '指针指向文号4最后一条信息
            If EOF(4) Then
               '关闭文件
            Close #4
            '删除INI文件
            Kill strFileName
                '.................................
                 '.................................
            gf_RenameSection = 1
            Exit Function
         End If
      Else
         '读取节名对比被更改节名
         If strInputData = "[" & strSectionName & "]" Then
            blnInZone = True
         Else
            '将节区及子键(键值)赋值变量strTopKeys
            If strTopKeys = "" Then strTopKeys = strInputData Else strTopKeys = strTopKeys & vbCrLf & strInputData
         End If
      End If
   Loop
   '关闭对应文号文件
Close #4
Exit_Handler:
Exit Function
Err_Handler:
gf_MsgBox Err.Description
Resume Exit_Handler
End Function
 
'=============================================================================================
'函数名称: gf_RenameKey  (对指定子键重新命名)  版本:1.01
'调用示例: gf_RenameKey(strFileName,strSection,strKeyName,NewKeyName)
'
'输入参数: (必需)strFileName   String      INI文件完整路径
'           (必需)strSection    String      子键名
'           (必需)strKeyName    String      新子键名
'           (必需)NewKeyName    String
'返    回: Integer
'适应版本: 97,2000,XP,2003,2007,2010,compatible
'作    者: 网络   整理:TM_彬 王宇虹
'关 键 字: 子键重新命名
'推荐指数: 2
'难度等级: 3
'适应场合: ini
'说    明: 对指定子键重新命名
'=============================================================================================
'GUID: F5A61AB9-60EE-4578-A320-C83E54510220 编码:1223233325 创建:2013/02/27 更新:2013/02/27
'=============================================================================================
Public Function gf_RenameKey(ByVal strFileName As String, ByVal strSection As String, ByVal strKeyName As String, ByVal NewKeyName As String) As Integer
   On Error GoTo Err_Handler
   Dim strKeyVal        As String
   '判断INI文件是否存在,不存在提示并退出函数
   If Dir(strFileName) = "" Then MsgBox "未找到INI文件,请确认其是否存在 ! ", vbCritical, "系统提示:": Exit Function
   '判断指定节区是否为有效节区名,非有效节区名则提示并退出函数
   If Not gf_SectionExists(strFileName, strSection) Then MsgBox "指定操作节区 [" & strSection & "] 未发现. " & vbCrLf & _
                    '...........................
                    '.................................
   gf_DeleteKey strFileName, strSection, strKeyName
   '添加新的子键及键值
   gf_AddToINI strFileName, strSection, NewKeyName, strKeyVal
   '函数输出1,表示操作成功
   gf_RenameKey = 1
Exit_Handler:
   Exit Function
Err_Handler:
   gf_MsgBox Err.Description
   Resume Exit_Handler
End Function
 
 
 
 
''=============================================================================================
''函数名称: gf_MsgBox  (提示信息框设置)  版本:1.01
''调用示例: gf_MsgBox(strMessage)
''           gf_MsgBox(strMessage,intType)
''           gf_MsgBox(strMessage,intType,intCustomerType)
''           gf_MsgBox(strMessage,intType,intCustomerType,errError)
''
''输入参数: (必需)strMessage    String      no button 通知
''           (可选)intType   Integer     提示是否按钮  询问
''           (可选)intCustomerType   Integer     自定义格式,需要设置intCustomerType参数值
''           (可选)errError  ErrObject       提示警句信息
''返    回: Integer
''适应版本: 97,2000,XP,2003,2007,2010,compatible
''作    者: 网络   整理:TM_彬 王宇虹,阿航
''关 键 字: 提示信
''推荐指数: 3
''难度等级: 4
''适应场合: 提示信息框设置
''说    明: 提示信息框设置
''=============================================================================================
''GUID: 72179DB9-68A6-4BBD-9609-1782023ABAC9 编码:1223233325 创建:2013/02/26 更新:2013/02/26
''=============================================================================================
Public Function gf_MsgBox(strMessage As String, Optional intMsgType As VbMsgBoxStyle = vbOKOnly, Optional strTitle As String, Optional errError As Object) As VbMsgBoxResult
    '无标题时,自动写入工程名 gstrProjectName
    If strTitle = "" Then
        
            strTitle = "Office中国"
 
    End If
    
    Dim obj
    Select Case VarType(obj)
        Case VbVarType.vbObject
            Set obj = errError
        Case Else
            obj = strMessage
    End Select
    
    '判断是否传入的是错误类型
    If Not errError Is Nothing Then
        Dim strNumber As String
               '.................................
              '.................................
    End If
    
    gf_MsgBox = MsgBox(strMessage, intMsgType, strTitle)
End Function
 

 

发布人:zstmtony  
分享到:
点击次数:  更新时间:2018-02-28 11:15:35  【打印此页】  【关闭】
上一条:access图片分页展示及选择功能-Access经典源码剖析  下一条:Access通用TAB键和默认值设置-Access经典源码剖析



相关文章

  • • Access自动播音员-Access经典源码剖析
  • • Access智能搜索组合框-Access经典源码剖析
  • • Access自动执行宏的妙用-Access经典源码剖析
  • • access图片分页展示及选择功能-Access经典源码剖析
  • • Access通用TAB键和默认值设置-Access经典源码剖析
  • • access图片文件保存到数据库的通用技巧-Access经典源码剖析
  • • 数据自动导出多个Excel或者多个工作表-Access经典源码剖析

热门文章

  • [2018-02-28] Access动画式关闭窗体-Access经典源码剖析access数据库
  • [2018-02-28] Access列表框的高级应用-Access经典源码剖析access数据库
  • [2018-02-28] Access通用TAB键和默认值设置-Access经典源码剖析access数据库
  • [2018-02-28] access图片分页展示及选择功能-Access经典源码剖析access数据库
  • [2018-02-28] ERP之BOM树源码-Access经典源码剖析access数据库
  • [2018-02-28] Access专业工资条打印-Access经典源码剖析access数据库

热门产品

  1. Access通用开发平台

    Access通用开发平台

  2. 短信专家接口(可用于企业及个人多种短信用途)

    短信专家接口(可用于企业及个人多种短信用途)

  3. 适合国庆/元旦/中秋等节日抽奖的程序

    适合国庆/元旦/中秋等节日抽奖的程序

公司动态|在线留言|在线反馈|联系我们|友情链接|会员中心|站内搜索|网站地图

中山市天鸣科技发展有限公司 版权所有 1999-2018 粤ICP备10043721号

广东省中山市西苑广场富贵阁20楼A座

电话:0760-88315075 手机:13928102596 QQ:1918333016

Access应用 Access培训 Access开发 Access平台

access|数据库|access下载|access教程|access视频|access软件

Powered by MetInfo 5.3.12 ©2008-2021  www.metinfo.cn