|
本帖最后由 610644034 于 2021-8-6 18:44 编辑
批处理想要 字符对齐 已经没有什么难度! 本人喜欢中文 批处理 , 发出来给大家参考一下(字符串长度只限制1000 范围 需要的可任意修改):
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:按占位数修正一个字符串的长度
rem :按占位数修正一个字符串的长度 "InOut_ptr" "In"
rem :参数列表 输入输出字符串变量名 占位数
if "" EQU "%~1" goto :eof
if "" EQU "!%~1!" goto :eof
if "" EQU "%~2" set "%~1=" & goto :eof
( set /a 按占位数修正一个字符串的长度_占位数=%~2 + 0 )>nul 2>nul
( if 0 EQU !按占位数修正一个字符串的长度_占位数! set "%~1=" & goto :eof )>nul 2>nul
set "按占位数修正一个字符串的长度_输出字符串="
for /l %%i in ( 0 1 999 ) do (
if "" EQU "!%~1:~%%i,1!" (
rem echo ************** 1
set "按占位数修正一个字符串的长度_输出字符串=!%~1:~0,%%i!"
goto :按占位数修正一个字符串的长度_001
)
if !按占位数修正一个字符串的长度_占位数! LEQ 0 (
set "按占位数修正一个字符串的长度_输出字符串=!%~1:~0,%%i!"
rem echo ************** 2
goto :按占位数修正一个字符串的长度_001
)
set "按占位数修正一个字符串的长度_临时字符=!%~1:~%%i,1!"
if !按占位数修正一个字符串的长度_临时字符! GTR Z set /a 按占位数修正一个字符串的长度_占位数=!按占位数修正一个字符串的长度_占位数! - 2
if !按占位数修正一个字符串的长度_临时字符! LEQ Z set /a 按占位数修正一个字符串的长度_占位数=!按占位数修正一个字符串的长度_占位数! - 1
)
:按占位数修正一个字符串的长度_001
rem echo ************** -- !按占位数修正一个字符串的长度_占位数!
if -1 EQU !按占位数修正一个字符串的长度_占位数! set "按占位数修正一个字符串的长度_输出字符串=!按占位数修正一个字符串的长度_输出字符串:~0,-1!?"
if 0 LSS !按占位数修正一个字符串的长度_占位数! (
for /l %%i in ( 1 1 !按占位数修正一个字符串的长度_占位数! ) do set "按占位数修正一个字符串的长度_输出字符串=!按占位数修正一个字符串的长度_输出字符串! "
)
if 0 EQU !按占位数修正一个字符串的长度_占位数! set "按占位数修正一个字符串的长度_输出字符串=!%~1!"
set "%~1=!按占位数修正一个字符串的长度_输出字符串!"
goto :eof
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
看看对齐效果就是这样的...................
|
|