[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[数值计算] 批处理如何在数字前面添加0/补充0/加零使得数字的长度达到指定位数

本帖最后由 pcl_test 于 2017-4-22 14:49 编辑

关于数字0填充个位数,提示“无效数字”

set i=0
set /a i=%i%+1
if %i% lss 10 set i=0%i%
if %i% leq 60 goto ag

如上,我想把小于10的个位数用0填充,但为什么到了08,09的时候会出现“无效数字......”,并且后面会%i%变成008.0008.00008.000008,一直重复
,这错误在哪里,实在不知道,那如果百位填充千位填充呢?
1

评分人数

    • pcl_test: 发帖前先使用论坛搜索PB -4

回复 2# pcl_test


    那难道默认的批处理中采用的是8进制???那我想用10进制该当如何?

TOP

回复 4# pcl_test


    那现在,我要表示08,如题里的命令,我要表示08,和09,应如何表示。

TOP

回复 4# pcl_test


        那现在,我要表示08,如题里的命令,我要表示08,和09,应如何表示。
我目前的处理方法是
if %i% == 008 set i=9
if %i% == 009 set i=10
如此来定义以便跳过其“无效数字”,但我知道,这不是可行的的,如果我要千位或百位填充0,那不一样搞死我。

TOP

回复 7# pcl_test


    只能如此???无法从0起始?

TOP

返回列表