这解决了提出的问题:
@echo off
setlocal EnableDelayedExpansion
set c=0
for /f "tokens=2 delims=:, " %%a in (' find ":" ^< "config.json" ') do (
set /a c+=1
set val[!c!]=%%~a
)
for /L %%b in (1,1,!c!) do echo !val[%%b]!
pause
这个版本会输出version = 0.2.2和test = true
唯一的变化是在第 6 行
@echo off
setlocal EnableDelayedExpansion
set c=0
for /f "tokens=1,2 delims=:, " %%a in (' find ":" ^< "config.json" ') do (
set /a c+=1
set val[!c!]=%%~a = %%~b
)
for /L %%b in (1,1,!c!) do echo !val[%%b]!
pause
这解决了下一个格式请求:variable-name=value
@echo off
for /f "tokens=1,2 delims=:, " %%a in (' find ":" ^< "config.json" ') do (
set "%%~a=%%~b"
)
set
pause
2016 年 2 月的请求可以这样解决,假设文件如下所示:
{
location : "C:\\Test Folder"
}
下面的批处理脚本
@echo off
for /f "tokens=1,2,*" %%a in (' find ":" ^< "config.json" ') do echo "%%~c"
pause