使用“!”读写XML文件字符

时间:2016-07-05 11:16:23

标签: xml batch-file

这是xml文件

<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

我使用此代码来读写文件

for /f "usebackq delims=" %%a in (%CONF_DIR%\process-conf.xml) do (
    echo %%a )

这是我写一个新文件时的结果

<//www.springframework.org/dtd/spring-beans.dtd">

我想“!”是特殊的人物,谁知道怎么做?我花了很多时间来做这件事。

1 个答案:

答案 0 :(得分:0)

使用for循环参数时,需要禁用延迟扩展 如果您需要延迟扩展,可以切换它。

setlocal DisableDelayedexpansion
for /f "usebackq delims=" %%a in (%CONF_DIR%\process-conf.xml) do (
    set "line=%%a" -- Here the delayed expansion have to be disabled
    setlocal EnableDelayedexpansion
    rem here you can use delayed expansion again
    echo(!line!
    endlocal
)