Board logo

标题: 强制获得一致的日期格式 [打印本页]

作者: ncqingyi     时间: 2007-7-31 09:40    标题: 强制获得一致的日期格式
@Echo off for /f "tokens=1,2,3,4 delims=/-: " %%a in ('date /t') do ( set fl1=%%a set fl2=%%b set fl3=%%c ) set flYear=%fl1% set flMonth=%fl2% set flDay=%fl3% if %fl2% GEQ 1000 ( set flYear=%fl2% set flMonth=%fl1% set flDay=%fl3% ) if %fl3% GEQ 1000 ( set flYear=%fl3% set flMonth=%fl1% set flDay=%fl2% ) @Echo %flYear%%flMonth%%flDay% YMD格式 因为中文和英文的计算机老是日期格式不一样,影响执行。 通过上面这个操作,就基本可以获得一致的日期时间。

作者: qzwqzw     时间: 2007-7-31 11:08
现在只支持以下格式 YYYY-MM-DD MM-YYYY-DD(很怪异的格式,我没有见过) MM-DD-YYYY 欧洲的DD-MM-YYYY没有支持 以英文或缩写表示的月份也无法支持 这种算法也没有办法都支持 所以还是太有局限性了 目前比较好的办法有 修改注册表日期格式键值 然后获取标准格式的日期值 直接通过BIOS中断或者WinAPI读取日期 当然这些办法仅用在语言环境很难确定的场合 如果仅在某些区域使用可以仅对某几种格式做单独处理即可

作者: HAT     时间: 2007-7-31 17:28
//修改注册表日期格式键值
@echo off
reg add "HKEY_CURRENT_USER\Control Panel\International" /v sShortDate /t REG_SZ /d yyyy-M-d /f

作者: hello12588     时间: 2010-9-16 15:07
新手,帮了大忙