BAT批处理中使用数组示例
程序员文章站
2022-06-17 13:32:11
批处理指令中并没有原生支持数组,但这不代表不能模拟出来。
来看下面的代码:
set obj_length=2
set obj[0].name=test1...
批处理指令中并没有原生支持数组,但这不代表不能模拟出来。
来看下面的代码:
set obj_length=2 set obj[0].name=test1 set obj[0].value=hello world set obj[1].name=test2 set obj[1].value=blahblah
这样就定义了一个数组了,而且是结构体的数组。
在需要取值的时候,可以这么玩:
set obj_index=0 :loopstart if %obj_index% equ %obj_length% goto :eof set obj_current.name=0 set obj_current.value=0 for /f "usebackq delims==. tokens=1-3" %%i in (`set obj[%obj_index%]`) do ( set obj_current.%%j=%%k ) echo name = %obj_current.name% echo value = %obj_current.value% echo. set /a obj_index=%obj_index% + 1 goto loopstart
输出结果:
name = test1 value = hello world name = test2 value = blahblah
怎么样,很不错吧~~