想要从文本文件中获取变量的值,将其与其他变量相连,然后将新值插入新的文本文件中



我正在做代码

echo on
SET /P CONTROLSTRING_0326 = < sample.txt
rem sample.txt has data as 00000000000000000000000000000000000002017060000000000000000
ECHO %CONTROLSTRING_0326%
pause
SET CONTROL_DATE = %CONTROLSTRING_0326:~39,6%
ECHO %CONTROL_DATE%
PAUSE
SET filler1="2226 0000000 00000000000 00000000000 
SET filler2= CONTROL 06.30"
PAUSE
SET "FINAL_CONTROL_2460 = %filler1%%CONTROL_DATE%%filler2%"
SET FINAL_CONTROL_2460
pause
SET FINAL_CONTROL_2460 > new_control.txt
PAUSE
EXIT

我想要文件new_control.txt应该具有以下数据

2226 0000000 00000000000 00000000000 201706 CONTROL 06.30"

,但是我在new_control.txt中获取数据,因为'echo on on och on on ocho on on och on''。不知道怎么了?

问题是,在set命令中的 =之前不应有空格字符。您创建的是一个名为" control_date"而不是" control_date"的变量。

更改

SET /P CONTROLSTRING_0326 = < sample.txt
SET CONTROL_DATE = %CONTROLSTRING_0326:~39,6%
SET "FINAL_CONTROL_2460 = %filler1%%CONTROL_DATE%%filler2%"

to

SET /P "CONTROLSTRING_0326=" < sample.txt
SET "CONTROL_DATE=%CONTROLSTRING_0326:~39,6%"
SET "FINAL_CONTROL_2460=%filler1%%CONTROL_DATE%%filler2%"

最新更新