使用Batch Script将大型XML行读取到变量

时间:2012-07-11 23:03:20

标签: batch-processing batch-file

我有一个只包含一行的xml文件,但问题是该行非常大,所以似乎我无法存储在一个变量中。

我想要的是这个,

给定tag1,tag2 ..... tag900,我想将每个标签分成如下一行:

TAG1

TAG2

TAG3

...

tag900

1 个答案:

答案 0 :(得分:2)

请勿尝试使用本机批处理。这将是非常困难的,任何解决方案都将非常缓慢。

问题是原生批次无法读取行> 8k,批处理没有很好的方法来读取部分行。

有一种方法可以创建一个大小为> =您的文件的测试文件,该文件由一个重复的字符组成。然后完成二进制文件比较(FC /B),并逐字符解析结果,表示为十六进制代码。它比这复杂一点,但我认为你不想去那里。

唯一的另一种选择是使用SET / P一次读入1021个字符,然后将事物解析并拼凑在一起。但这是未经证实的,而且我认为不值得努力。

如果您想使用本机脚本语言而不是我建议的VBScript或JScript。 (也许是PowerShell,但我对其功能并不是很了解)。

您可以下载一个Unix文本处理工具,例如已移植到Windows的sed。

我对XML做的不多,但我必须相信有一个专门针对XML的免费工具可以让你的工作变得相当容易。

基本上,使用除了批次之外的任何东西! (这来自一个爱好者正在解决批处理问题的人)