加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

从批处理文件中解析属性的XML文件

发布时间:2020-12-16 23:07:06 所属栏目:百科 来源:网络整理
导读:我正在解析如下的 XML文件: ?xml version="1.0"?!----configuration settings connections connection name="name1" value="connection1" type="abc"/ connection name="name2" value="connection2" type="def"/ /connections /settings/configuration 从批
我正在解析如下的 XML文件:

<?xml version="1.0"?>
<!--
-->
<configuration>
   <settings>
      <connections>
            <connection name="name1" value="connection1" type="abc"/>
            <connection name="name2" value="connection2" type="def"/>
      </connections>
   </settings>
</configuration>

从批处理文件中,我提示用户输入连接名称.我想解析XML获取具有指定名称的连接并获取其值.所以如果用户给出name1,我想选择connection1.我从Extract XML Tag Values (Based on a Flag) Using Batch获得了以下代码

我不熟悉for循环(特别是分隔符,令牌)批处理文件,所以我不确定这是如何工作的,以及如何使它适合我.

(for /F "tokens=1,2 delims== " %%a in (connection.config) do (
   if "%%~b" neq "" set %%a=%%~b
   if /I "!name!" equ "%name%" echo !value!
))

解决方法

如果您使用正确的令牌和分隔符,它可以工作:

@echo off&setlocal
for /F tokens^=2^,3^,5delims^=^<^"^= %%a in (connection.config) do (
   if "%%a" equ "connection name" echo(%%b %%c
)

输出是:

name1 connection1
name2 connection2

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读