测试文件名假设为 test.xml
获取结果文件名为 test.csv
如下代码存为批处理脚本文件(test.cmd 或 test.bat)
楼主提供的样本已测试通过。
- @echo off &setlocal enabledelayedexpansion
- findstr /inc:"Soul Crystal" /inc:"</item>" "test.xml" 2>nul>tmp.0
- (for /f "tokens=1 delims=:" %%k in (tmp.0) do (
- if not defined v1 (call :getV "test.xml" %%k v1) else (
- set/a "n=%%k-2"
- (call :getV "test.xml" !n! v2)
- echo,!v1!,!v2!
- set "v1="
- )
- ))>"test.csv"
- del /q tmp.0
- endlocal &pause &exit/b
- :getV //%1=文件名 %2=行号 %3=返回值变量名
- for /f "usebackq skip=%~2 delims=" %%s in ("%~1") do (
- for /f tokens^=1-4^delims^=^" %%1 in ("%%~s") do (set "%~3=%%4")
- exit/b
- ) & exit/b
复制代码
|