【发布时间】:2016-12-12 17:55:01
【问题描述】:
我有以下 xml:
<datafield tag="007G">
<subfield code="c">GBV</subfield>
<subfield code="0">688845614</subfield>
</datafield>
我尝试提取<subfield code="0" 688845614的内容
这是我的代码:
@echo off
for /F "tokens=2 delims=>/<" %%i in ('findstr "007G" curlread.txt') do echo %%i
pause
但作为输出我只得到<datafield tag="007G">
xml 文档中可能有很多<datafield tag="007G">,我需要从每个文档中获取<subfield code="0"。
【问题讨论】:
-
如果你对
<subfield code="0">感兴趣,那你为什么要搜索007G呢?无论如何,我建议不要为此使用批处理文件,因为它本身不理解 XML 文件;而是使用可以处理 XML 文件的语言...... -
批处理无法解析 XML,
findstr只返回与您搜索的内容匹配的行。 -
Vbscript、Jscript 和 Powershell 都具有原生读取 XML 文件的能力。
标签: xml batch-file extraction