学习了 先计算位数 这样小数可以不考虑其位数
- @echo off&setlocal enabledelayedexpansion
- for /f "tokens=1-3 delims= " %%a in ('type test.xls') do (
- if not defined flag (
- echo %%b %%c>test.xls&set "flag=a"
- ) else (
- if "%%c"=="" (
- for /l %%d in (1 1 !n!) do set mn=!mn!0
- for %%d in (!var1!) do (
- set/a t+=1
- set var2=%%d!mn!
- call set var2=%%var2:~,!n!%%
- >>test.xls call echo %%.!t!%%
- call set/a num+=%%_!t!%%!var2!
- )
- call set num=%%num:~,-!n!%%.%%num:~-!n!%%
- >>test.xls echo %%a:%%b !num!
- for %%i in (n m var1 num mn t) do set %%i=
- ) else (
- for /f "tokens=1* delims=." %%i in ("%%c") do (
- set /a m+=1
- set "_!m!=%%i"
- set ".!m!=%%b %%c"
- if not "%%j"=="" (
- set var1=!var1! %%j
- for /f "delims=:" %%l in ('^(echo %%j^&echo.^)^|findstr /o ".*"') do set/a s=%%l-3
- if !s! gtr !n! set/a n=s
- ) else set var1=!var1! 0
- )
- )
- )
- )
复制代码
|