VBS读取配置文件配置项的实现代码

如何读取配置文件配置项的实现代码主要分为以下几个步骤:

  1. 读取配置文件名:
'读取配置文件名
Dim configFile
configFile = "config.ini"

首先,我们需要定义一个变量来存储配置文件的名字,这里我们将配置文件名设置为config.ini。config.ini文件正确放置在VBS文件的同一目录下。

  1. 读取配置项

读取配置项有两种方法:使用FileSystemObject或ADODB.Stream对象。下面分别介绍这两种方法:

使用FileSystemObject读取:

'使用FileSystemObject读取配置项
Dim fso, file, str
Set fso = CreateObject("Scripting.FileSystemObject")
Set file = fso.OpenTextFile(configFile, 1)
While Not file.AtEndOfStream
  str = file.ReadLine()
  '判断读取到的行是否为注释
  If Left(str,1) = "#" Then
    '如果是注释行,继续读取下一行
    Continue While
  End If
  '处理读取到的非注释行
  '...
Wend
file.Close
Set fso = Nothing

此方法需要使用FileSystemObject对象来操作文件,其中OpenTextFile方法是用来打开文件的。然后使用While循环和ReadLine方法逐行读取配置文件,判断并去除注释行。在此基础上,就可以按照实际需求处理读取到的非注释行。

使用ADODB.Stream对象读取:

'使用ADODB.Stream对象读取配置项
Dim stream, line, arrLine
Set stream = CreateObject("ADODB.Stream")
stream.Charset = "utf-8"
stream.Type = 2
stream.Open
stream.LoadFromFile configFile
Do While Not stream.EOS

    line = stream.ReadText(-2) '读取一行

    '判断读取到的行是否为注释
    If Left(line,1) = "#" Then
        '如果是注释行,继续读取下一行
        Continue Do
    End If

    '处理读取到的非注释行
    '...

Loop
stream.Close
Set stream = Nothing

这种方法需要使用ADODB.Stream对象来操作文件,其中LoadFromFile方法是用来加载文件的。然后使用Do While循环和ReadText方法逐行读取配置文件,判断并去除注释行。在此基础上,就可以按照实际需求处理读取到的非注释行。

示例1:

在config.ini文件中设置以下配置项:

#这是注释行
[SectionName]
KeyName1=Value1
KeyName2=Value2

然后使用上述代码读取配置项:

'使用FileSystemObject读取配置项
Dim fso, file, str
Set fso = CreateObject("Scripting.FileSystemObject")
Set file = fso.OpenTextFile(configFile, 1)
Dim sectionName, keyValue
While Not file.AtEndOfStream
  str = file.ReadLine()
  '判断读取到的行是否为注释
  If Left(str,1) = "#" Then
    '如果是注释行,继续读取下一行
    Continue While
  End If
  '处理读取到的非注释行
  If InStr(str, "[") = 1 And InStr(str, "]") > 1 Then
    sectionName = Mid(str, 2, InStr(str, "]") - 2)
    '处理SectionName
    '...
  Else
    keyValue = Split(str, "=")
    '处理KeyName和Value
    '...
  End If
Wend
file.Close
Set fso = Nothing

以上代码可以读取config.ini文件中的SectionName和KeyName的值,并进行处理。

示例2:

在config.ini文件中设置以下配置项:

#这是注释行
[SectionName]
KeyName1=Value1
KeyName2=Value2

然后使用ADODB.Stream对象读取配置项:

'使用ADODB.Stream对象读取配置项
Dim stream, line, arrLine
Set stream = CreateObject("ADODB.Stream")
stream.Charset = "utf-8"
stream.Type = 2
stream.Open
stream.LoadFromFile configFile
Dim sectionName, keyValue
Do While Not stream.EOS

    line = stream.ReadText(-2) '读取一行

    '判断读取到的行是否为注释
    If Left(line,1) = "#" Then
        '如果是注释行,继续读取下一行
        Continue Do
    End If

    If InStr(line, "[") = 1 And InStr(line, "]") > 1 Then
        sectionName = Mid(line, 2, InStr(line, "]") - 2)
        '处理SectionName
        '...
    Else
        keyValue = Split(line, "=")
        '处理KeyName和Value
        '...
    End If

Loop
stream.Close
Set stream = Nothing

以上代码可以读取config.ini文件中的SectionName和KeyName的值,并进行处理。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:VBS读取配置文件配置项的实现代码 - Python技术站

(0)
上一篇 2023年6月25日
下一篇 2023年6月25日

相关文章

  • C#取得Web程序和非Web程序的根目录的N种取法总结

    C#取得Web程序和非Web程序的根目录的N种取法总结 在使用C#编写程序时,我们经常需要获取程序的根目录,根据程序是Web程序还是非Web程序,获取根目录的方法也有所不同。下面总结了几种不同情况下获取根目录的方法: 获取Web程序的根目录 方法1:使用HttpContext.Current.Server.MapPath方法 在Web程序中,可以使用Http…

    other 2023年6月27日
    00
  • Java从服务端下载Excel模板文件的两种方法

    当我们需要在Java服务端下载Excel模板文件时,一般有两种方法可以实现: 方法一:使用绝对路径进行下载 首先,需要在服务器上创建一个目录,用于存储下载的Excel模板文件。然后,使用Java提供的File类获取该目录的绝对路径。最后,将绝对路径和需要下载的Excel模板文件名拼接起来,形成完整的文件路径,并使用File类获取该文件的输入流,从而实现下载操…

    other 2023年6月27日
    00
  • 原创的C语言控制台小游戏

    原创的C语言控制台小游戏攻略 简介 本游戏是一款用C语言编写的控制台小游戏。玩家需要通过控制方向键,使得主角躲避障碍物,并尽可能多的吃到食物来获得高分。游戏中还设置了特殊障碍物和加速道具,玩家需一定技巧才能获得高分。 游戏规则 游戏场景是一个矩形,玩家需要通过控制主角,躲避上下左右移动的障碍物和随机出现的特殊障碍物。 玩家通过控制方向键控制主角向上、向下、向…

    other 2023年6月27日
    00
  • vuex + keep-alive实现tab标签页面缓存功能

    Vue.js是一款非常流行的前端框架,而Vuex则是Vue.js的一个插件,它可以帮助我们管理Vue.js应用中的状态。而tab标签页则是一个常见的前端UI组件,本攻略将介绍如何使用Vuex和keep-alive对tab标签页进行缓存。 实现思路 首先,我们需要使用路由组件来实现tab标签页。当我们点击tab标签时,对应的路由组件会被激活并渲染到页面上。而当…

    other 2023年6月27日
    00
  • oracleexadata体系笔记

    Oracle Exadata体系笔记 Oracle Exadata是Oracle公司推出的一款专用于数据处理的高性能、高可靠性的数据库机。它结合了Oracle数据库软件与硬件的优势,采用了多种特殊的硬件和软件优化,以提供极高的性能、可靠性和扩展性。 Exadata体系结构 Exadata机器的核心是存储服务器和计算服务器,它们通过Infiniband高速网络…

    其他 2023年3月28日
    00
  • SQL存储过程+游标 循环批量()操作数据

    SQL存储过程+游标 循环批量()操作数据 存储过程和游标是SQL语言中非常重要的几个概念,可以大大提高数据操作的效率。循环批量操作数据也是常见需求之一,本文将介绍如何结合游标和存储过程来实现循环批量操作数据的方法。 存储过程 存储过程是SQL Server数据库中可重用的代码块,可以用来封装一个或多个SQL查询,实现统一的业务逻辑。存储过程的执行效率较高,…

    其他 2023年3月28日
    00
  • 新外星人17值得买吗?戴尔新外星人17寸笔记本全面评测图解

    很抱歉,作为文本模型,我无法以标准的markdown格式回答您的问题。但是,我可以为您提供一份详细的攻略,包含戴尔新外星人17寸笔记本的全面评测和图解,并提供两个示例说明。 戴尔新外星人17寸笔记本全面评测攻略 产品外观与设计 戴尔新外星人17寸笔记本采用了时尚的外观设计,具有独特的外星人系列风格。其机身采用高质量的材料制造,给人一种坚固耐用的感觉。键盘背光…

    other 2023年10月17日
    00
  • iDempiere 使用指南 绿色版一键启动测试环境

    iDempiere是一款开源的企业资源计划(ERP)软件,它提供了一系列的业务功能,包括财务、采购、销售、库存等。本文将介绍如何使用iDempiere的绿色版一键启动测试环境,包括下载、安装、配置等。 下载iDempiere绿色版 iDempiere绿色版是一个预先配置好的iDempiere测试环境,可以快速启动和测试iDempiere。可以从iDempie…

    other 2023年5月5日
    00
合作推广
合作推广
分享本页
返回顶部