|
今天更新一款软件,发现各种配置大量错误经过一天排查,发现是:时间_格式化()命令出现了问题
精易模块7.5版本更新后,对:时间_格式化()进行了修改,将日期后面默认加了一个空格,导致跟旧版本模块用法对应不上
7.5版本之前的命令返回值:2019-12
缓存目录 = 时间_格式化 (取现行时间 (), “yyyy-MM”, “”, 真) + “\”
7.5之后版本命令返回值:2019-12空格(默认多了一个空格)
缓存目录 = 时间_格式化 (取现行时间 (), “yyyy-MM”, “”, 真) + “\”
原先的用法,用户自定义日期后面需不需要加空格,需要加空格用户自定义补上空格,现在版本改成了默认都在日期后面加上空格了,导致用旧版本模块之前引用此命令和新版本引用返回不一样
有的人源码中大量引用了时间格式化命令,修改工作久比较繁琐了,至于自己重新拿源码编译是能解决,但是大多数时候并不能第一时间发现是此命令的问题
希望能修复一下,以免有其他易友存在与我相同困扰,以下是修复代码:
|
时间_格式化 | 文本型 | | |
参_欲格式化时间 | 日期时间型 | | | | 参_日期格式 | 文本型 | | | | 参_时间格式 | 文本型 | | | | 参_是否为24小时制 | 逻辑型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 局_系统时间 | 精易_时间 | | | 局_整数返回 | 整数型 | | | 局_日期 | 文本型 | | | 局_时间 | 文本型 | | | 局_Flags | 整数型 | | |
局_整数返回 = VariantTimeToSystemTime (参_欲格式化时间, 局_系统时间 )如果真 (1 = 局_整数返回 )局_日期 = 取空白文本 (50 )GetDateFormatA (0, 0, 局_系统时间, 参_日期格式, 局_日期, 50 )局_时间 = 取空白文本 (50 )如果真 (参_是否为24小时制 = 真)局_Flags = #TIME_FORCE24HOURFORMAT GetTimeFormatA (0, 局_Flags, 局_系统时间, 参_时间格式, 局_时间, 50)返回 (局_日期 + 局_时间 )返回 (“”)
|
|