首页 > 其他 > 详细

VFP调整本机日期时间与服务器日期时间一致

时间:2020-02-14 11:40:15      阅读:215      评论:0      收藏:0      [点我收藏+]

*!*调整本机日期时间与服务器日期时间一致( YYYY-MM-DD HH:MM:SS.FFF )
*!*以下cSqlStr及nCon为SQL查询串及连接句柄
cSqlStr="Select SysTime=Convert(Char,GetDate(),121)"      &&取服务器本地当前日期时间(已转换为字符型)
=SQLEXEC(nCon,cSqlStr,"SysDateTime")
SELECT SysDateTime
lcDateTime=ALLTRIM(SysDateTime.SysTime)
USE in "SysDateTime"
nYear=VAL(SUBSTR(lcDateTime,1,4))              &&取当前日期-年
nMonth=VAL(SUBSTR(lcDateTime,6,2))             &&取当前日期-月
nWeek=DOW(CTOT(lcdateTime))-1                  &&取当前日期-星期, 实际上此值可为1-7任意间的任意数
nDay=VAL(SUBSTR(lcDateTime,9,2))               &&取当前日期-日
nHours=VAL(SUBSTR(lcDateTime,12,2))            &&取当前时间-时
nMinutes=VAL(SUBSTR(lcDateTime,15,2))          &&取当前时间-分
nSeconds=VAL(SUBSTR(lcDateTime,18,2))          &&取当前时间-秒
nMSeconds=VAL(RIGHT(lcDateTime,3))             &&取当前时间-毫秒
*!*转换十进制数字为二进制字符(高低位互换、压缩)
lcDateBuf=Dec2Binstr(nYear)+Dec2Binstr(nMonth)+Dec2Binstr(nWeek)+Dec2Binstr(nDAY)
lcDateBuf=lcDateBuf+Dec2Binstr(nHours)+Dec2Binstr(nMinutes)+Dec2Binstr(nSeconds)+Dec2Binstr(nMSeconds)
*!*设置本机当地时间
DECLARE SHORT SetLocalTime IN win32api STRING SystemTime
=SetLocalTime(lcDateBuf)                      &&设置本机本地日期时间

*!*将十进制字符转换为二进制
FUNCTION Dec2Binstr
PARAMETERS DecStr
PRIVATE BinStr
BinStr=CHR(MOD(DecStr,256))+CHR(DecStr/256)
RETURN BinStr

VFP调整本机日期时间与服务器日期时间一致

原文:https://www.cnblogs.com/hnllhq/p/12306578.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!