如何使用批处理文件读取很长一段未格式化的xml?我试图在每个">"之后插入换行符。
问题是,我的批处理文件在找到">"后会跳到下一行。
由于这种行为,只显示我的xml文件的第一个标签(只有一行,第二行不存在)。
这是我使用过的命令:
FOR /F "delims=>" %%i IN (test.xml) DO @echo %%i
这是我的xml文件的外观示例:
<simpleType name="parseType"><restriction base="xs:token"><enumeration value="xml"/<enumeration value="text"/></restriction></simpleType>
这是cmd命令的输出:
<simpleType name="parseType"
答案 0 :(得分:3)
这是一种强有力的方法,可以处理很长的行:
type "file.txt" | repl ">" ">\r\n" XL >"newfile.txt"
这使用名为repl.bat
的助手批处理文件(由dbenham提供) - 从以下网址下载:https://www.dropbox.com/s/qidqwztmetbvklt/repl.bat
将repl.bat
放在与批处理文件相同的文件夹中或放在路径上的文件夹中。
答案 1 :(得分:0)
如果你想将文件加载到控制台,你可以使用&#34; MORE&#34;命令而不是&#34; FOR&#34;。
more %%1
如果你想逐行加载XML - 编写简单的控制台应用程序非常容易:
Console.WriteLine(XElement.Load(args[0]));
因此它的格式有效。
您可以在&#34; BAT&#34;
中使用它如果你想阅读XML&#34;逐行&#34;但是没有任何断路器 - 这是一个奇怪的想法,但是你仍然可以下载适用于Windows的Unix工具并使用grep等等,但它会让你大脑崩溃,仅此而已。