|
|
发表于 2024-10-2 10:20:58
|
显示全部楼层
本帖最后由 aloha20200628 于 2024-10-2 10:42 编辑
回复 1# zhlgx
一楼代码存在变量引用等错误,现重写一个简化版本如下...
主要包含几个处理步骤:检查输入月值的合理性;平闰年2月份天数选择值;大小月份天数选择值;月日值补零占位处理...
- @echo off &setlocal enabledelayedexpansion
- choice /c 123456789abc /n /m "指定一个月份值 [1,2,3,4,5,6,7,8,9,a,b,c] 其中 a=10,b=11,c=12:"
- if !errorlevel! equ 0 (exit/b) else set "m=!errorlevel!"
- set "m30=4,6,9,11," &set/a "y=%date:~,4%,r=y%%4"
- if !m! equ 2 (set "days=28" &if !r! equ 0 set "days=29") else (
- if "!m30:%m%=!"=="!m30!" (set "days=31") else set "days=30")
- if !m! leq 9 (set mm=0!m!) else (set mm=!m!)
- for /l %%n in (1,1,!days!) do (if %%n leq 9 (md "!y!年!mm!月\0%%n日") else md "!y!年!mm!月\%%n日") 2>nul
- endlocal&pause&exit/b
复制代码 |
|