如果我有以下格式的xml文件,我如何在批处理(.bat)脚本中解析它?还是有一种方法我只能在不解析的情况下获得某些价值?
例如,我需要从此xml文件中获取'date'的值。
<?xml version="1.0" encoding="UTF-8"?>
<note>
<slideshow
title="Sample Slide Show"
date="2016/05/03"
author="Yours Truly" >
</slideshow>
</note>
答案 0 :(得分:2)
这是一个接受单个参数的脚本 - xml文件并获取幻灯片显示的节点日期属性值。如果文件具有不同的结构,您可以更改xpath查询以满足您的需求:
private void labels_click(object sender, EventArgs e)
{
var clickedLabel = (Label)sender;
var index = this.tableLayoutPanel1.Controls.IndexOf(clickedLabel);
if(index == _LabelIndex)
{
// used have clicked the red label.
}
}
修改强> 现在这里是一个xpath.bat - 一个可以解析xml文件的常用脚本。
答案 1 :(得分:1)
这是一个纯粹的batch-file解决方案。以下脚本需要三个命令行参数:给定顺序中的(文件路径)XML文件,节点(示例中为#include <iostream>
#include <cmath>
auto getπ()
{
return M_PI;
}
int main()
{
auto appleπ = getπ();
std::cout << appleπ << "\n";
}
)和属性名称(slideshow
)。返回数据输出到控制台窗口,可以重定向到文件(date
)。
这是运行脚本的示例命令行(假设XML文件名为>
,脚本名为presentation.xml
,结果数据将写入extract-xml-attrib.bat
) :
attr.txt
这是脚本"extract-xml-attrib.bat" "presentation.xml" "slideshow" "date" > "attr.txt"
:
extract-xml-attrib.bat