ciscoxmlin工具转换为edit_config

ciscoxmlin工具转换为edit_config,第1张

要将 `ciscoxmlin` 工具转换为 `edit_config`,您需要按照以下步骤进行 *** 作:

1. 首先,使用 `ciscoxmlin` 工具生成 XML 文件。例如,您可以使用以下命令导出配置数据并将其保存为 XML 文件:

```

ciscoxmlin -x -c <config_file>-o <output_file>.xml

```

2. 然后,将生成的 XML 文件转换为 `edit_config` 格式。您可以使用 `xsltproc` 工具执行此 *** 作。以下是一个示例命令:

```

xsltproc --stringparam operation merge --stringparam format xml <path_to_xslt_file>/cisco-nx-xslt.xsl <input_file>.xml

```

其中,`<path_to_xslt_file>` 是 `cisco-nx-xslt.xsl` 文件所在的路径,`<input_file>.xml` 是您导出的 XML 文件名。

3. 通过以上步骤,您已将 `ciscoxmlin` 的输出转换为 `edit_config` 格式。您可以将输出结果直接传递给任何支持 `edit_config` 的设备或系统。

希望以上信息对您有所帮助!如果您还有其他问题,请随时问我。

有两种方法:1)内嵌脚本, 2)使用扩展对象

使用内嵌脚本的方法,MSDN上已经有比较清楚的描述: Script Blocks Using msxsl:script。但对扩展对象的描述好像并不清晰。其实扩展对象比内嵌更为强大。举个例子,假设我们想知道自己所关心城市的天气,我们用一个xml来描述:

<?xmlversion="1.0"encoding="utf-8" ?>

<china>

<city>Shanghai</city>

<city>Beijing</city>

</china>

在这里我们想知道上海和北京两地的天气,并希望通过一个XSLT来转换出如下结果:

<Report>

<Cityname="Shanghai">多云</City>

<Cityname="Beijing">小雨</City>

</Report>

天气预报是通过调用一个web服务得到的。可以想象,单纯的XSLT绝对没办法把这事简单搞定。不过通过扩展对象,这件事情就变得异常简单了。

首先我们创建一个扩展对象:

public class WeatherReport

{

public string GetReport(string city)

{

return "weather of " + city

}

}

这个对象支持一个方法:根据城市名称返回其天气。为简单起见,我们返回"weather of"加城市名字。在具体的应用中可以去调用具体的web服务。

下面这段代码实现将结果输出到屏幕上:

private static void ShowWeather(string xmlFile, string xsltFile)

{

XmlDocument xmldoc = new XmlDocument()

xmldoc.Load(xmlFile)

XmlDocument xsltDoc = new XmlDocument()

xsltDoc.Load(xsltFile)

XslCompiledTransform xslt = new XslCompiledTransform()

xslt.Load(xsltDoc.CreateNavigator())

XmlTextWriter writer = new XmlTextWriter(Console.Out)

writer.Formatting = Formatting.Indented

XsltArgumentList xsltArgList = new XsltArgumentList()

xsltArgList.AddExtensionObject("urn:my.xslt.extension", new WeatherReport())

xslt.Transform(xmldoc, xsltArgList, writer)

writer.Close()

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11538817.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存