@echo off&setlocal EnableDelayedExpansion for /f "tokens=*" %%a in ('dir /b *.txt') do (set "n=%%~na" call :num2hz "!n!" hzf set h=0 for /f "tokens=*" %%t in (%%a) do (set "m=%%t" set /a h+=1 if !h! EQU 1 (call :num2hz "!m!" hzt set hzt=!hzt:^"=! echo !hzt!>!hzf!.txt) else (echo %%t>>!hzf!.txt) ::如果校验没问题,请把下面一行的 echo 删掉再运行(以便删除源文件) echo del /f /q %%a) goto :EOF
:num2hz %1 %2 set x=%1 set x=%x:1=一% set x=%x:2=二% set x=%x:3=三% set x=%x:4=四% set x=%x:5=五% set x=%x:6=六% set x=%x:7=七% set x=%x:8=八% set x=%x:9=九% set x=%x:0=零% set %2=%x% goto :EOF
@echo off setlocal EnableDelayedExpansion for /f "tokens=*" %%i in ('dir/b *.txt') do ( set f=%%~ni set f=%f:1=一% set f=%f:2=二% set f=%f:3=三% set f=%f:4=四% set f=%f:5=五% set f=%f:6=六% set f=%f:7=七% set f=%f:8=八% set f=%f:9=九% set f=%f:0=零% echo 要处理文件 !f!>!f!.txt more +1 "%%i">>!f!.txt del "%%i")本回答被网友采纳