不清楚你的实际文件/情况,仅以问题中的样例说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起双击运行
/*&cls&echo off&cd /d "%~f0"&mode con lines=5000
rem 将一个txt里的列表数据转换成json文件
set #=Any question&set _=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%_% %z%
set "txtfile=aa_20220309.txt"
if not exist "%txtfile%" (echo;"%txtfile%" 未找到&pause&exit)
type "%~f0"|cscript -nologo -e:jscript "%~f0" "%txtfile%"
echo;%#% +%$%%$%/%_% %z%
pause
exit
*/
var fso=new ActiveXObject('Scripting.FileSystemObject');
var data=WSH.StdIn.ReadAll();
var m=data.match(/\/\*\r\n([\s\S]+)\*\/\s*$/);
var f=fso.OpenTextFile(WSH.Arguments(0), 1);
var text=f.ReadAll();
f.Close();
var s=[],arr=text.replace(/^\s*|\s*$/g,'').split(/[\r\n]+/);
for(var i=1;i<arr.length;i++){
var brr=arr[i].split(/\s+/);
var line=m[1].replace(/\s*$/,'');
line=line.replace("#0#",brr[0]).replace("#1#",brr[1]);
line=line.replace("#2#",brr[2]).replace("#3#",brr[3]);
s.push(line);
}
var json="[\r\n"+s.join(",\r\n")+"\r\n]";
WSH.StdErr.WriteLine(json);
/*
{
"id":"#0#",
"name":"#1#",
"value":{
"age":"#2#",
"city":"#3#"
}
}
*/
/*&cls&echo off&cd /d "%~f0"&mode con lines=5000
rem 将一个txt里的列表数据转换成json文件
set #=Any question&set _=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%_% %z%
set "txtfile=aa_20220309.txt"
if not exist "%txtfile%" (echo;"%txtfile%" 未找到&pause&exit)
type "%~f0"|cscript -nologo -e:jscript "%~f0" "%txtfile%"
echo;%#% +%$%%$%/%_% %z%
pause
exit
*/
var fso=new ActiveXObject('Scripting.FileSystemObject');
var data=WSH.StdIn.ReadAll();
var m=data.match(/\/\*\r\n([\s\S]+)\*\/\s*$/);
var f=fso.OpenTextFile(WSH.Arguments(0), 1);
var text=f.ReadAll();
f.Close();
var s=[],arr=text.replace(/^\s*|\s*$/g,'').split(/[\r\n]+/);
for(var i=1;i<arr.length;i++){
var brr=arr[i].split(/\s+/);
var line=m[1].replace(/\s*$/,'');
line=line.replace("#0#",brr[0]).replace("#1#",brr[1]);
line=line.replace("#2#",brr[2]).replace("#3#",brr[3]);
s.push(line);
}
var json="[\r\n"+s.join(",\r\n")+"\r\n]";
WSH.StdErr.WriteLine(json);
/*
{
"id":"#0#",
"name":"#1#",
"value":{
"age":"#2#",
"city":"#3#"
}
}
*/

