Windows 在批处理文件中打印数组元素值

Windows 在批处理文件中打印数组元素值,windows,batch-file,locale,Windows,Batch File,Locale,在以下代码中打印数组元素值时出现问题: @echo off setlocal enabledelayedexpansion enableextensions for /F "tokens=2,3 delims= " %%a in ('findstr "associationMaxRtx maxIncomingStream maxOutgoingStream initialAdRecWin maxUserdataSize mBuffer nThreshold PathMaxRtx maxInit

在以下代码中打印数组元素值时出现问题:

@echo off 
setlocal enabledelayedexpansion enableextensions
for /F "tokens=2,3 delims= " %%a in ('findstr "associationMaxRtx maxIncomingStream maxOutgoingStream initialAdRecWin maxUserdataSize mBuffer nThreshold PathMaxRtx maxInitialRtrAtt minimumRto maximumRto initialRto rtoAlphaIndex tSack" C:\Users\ephajin\logs.txt') do (
     set /A count+=1
     set vartmp1=%%a
     set vartmp2=%%b
     set "array[!count!]="%%a %%b""
)



(for /L %%i in (1,1,%count%) do  echo !array[%%i]!
) > result.txt
在结果文件中,我得到了输出

ECHO is off.
ECHO is off.
ECHO is off.
ECHO is off.
它不打印数组值

此问题可能是由于
setlocal enabledelayedexpansion
造成的,但如何更正

FOR /L %%a IN (1,1,4) DO ECHO !array[%%a]!

FOR /f "tokens=1*delims==" %%a  IN ('set array[') DO ECHO %%b
这两行中的任何一行都应该显示您似乎需要的内容

由于第一个数组在效果上与您的代码相同,我怀疑
array[*]
array没有正确建立。您可以通过执行

set array[
精确显示已设置的内容。其实

set
应该显示所有定义的用户变量

set|more
将显示相同的内容,但允许您逐页浏览它们

SET "result="
FOR /f "tokens=1*delims==" %%a  IN ('set array[') DO SET "result=!result! %%b"
ECHO result: "%result%" or "%result:~1%"
echo===============
SET "result="
FOR /L %%a IN (1,1,4) DO SET "result=!result! !array[%%a]!"
ECHO result: "%result%" or "%result:~1%"

设置
结果的两种方法
——数组中的值列表。当然,
set
指令中的空格几乎可以是您想要的任何字符,例如逗号。结果显示为前导空格和删除空格。

谢谢您的回答。实际上我想存储!数组[%%i]!将结果转换为一个变量,你能帮我做同样的事情吗?谢谢你的回复,我尝试了以下代码(for/f“tokens=1*delims==”%a IN('set array[')DO set“result=%%b”ECHO“%result%”)>result.txt但在结果文件中,我收到以下输出:C:\Users\ephajin>SET“result=”rtoaphaindex 3“C:\Users\ephajin>SET“result=”rtoaphaindex 3“我只想要”rtoaphaindex 3”作为输出。请帮助我了解sameIt。如果不知道分配给
array[*]的值是什么,则无法从您发布的代码中得出任何结论
以及您想要的一个或多个值。为
结果
指定一个值,然后在不使用
延迟扩展
调用echo%%result%%
的情况下尝试输出该值没有明显意义。当
echo%%b
应该做同样的事情时,这是为了追求一个未指定的目标。请编辑完整的实际代码、输入数据和预期输出,作为原始问题的补充。