it编程 > 前端脚本 > Dos/bat

BAT批处理提取系统时间的实现代码(bug修复)

256人参与 2024-05-19 Dos/bat

一般情况下用下面的代码即可,但批处理的默认0开头的数字以为是8进制,导致获取的时间不准确

使用上面的代码提取系统的小时和分钟,原本运行的结果如下:
xiaos=9
fenz=18
但今天提取的却是下面格式(同一台机器,同一个系统):
xiaos=09
fenz=18
由此带来后期计算的错误。

因为接触批处理不久,不知是哪里出了问题?特请教。

bathome的管理员给出的答案

完美解决。

问题找到了。日期和时间的格式是03,09格式,如果进行数值计算或赋值时,因为是0开头,所以会被认为是八进制数值,当为08,09格式就需要进位,于是就出错了。而07以下不需要进位所以不会出错。

(0)

您想发表意见!!点此发布评论

推荐阅读

批处理bat将文本中的数据相加输出的代码

05-19

bat截取日期、时间之后进行 set /a 计算时08和09会被看做非法八进制数字

05-19

批处理bat将txt文本第一列内容相同的行的最后一列的数字相加

05-19

批处理函数的高效另类应用(免call)

05-19

批处理统计词频实现代码(统计重复行的数量/每行重复出现的次数)

05-19

批处理位运算演示代码

05-19

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论