我想在Asp中用vbscript實現(xiàn)日期格式中的月份和日期為兩位數(shù)字,怎么實現(xiàn)呢?
今天改一個生成id的函數(shù),要求以yyyymmdd的形式產(chǎn)生id,但是vbscript中產(chǎn)生的日期格式可能會成為yyyymd的形式,也就是去掉了高位上的0,查找了vbscript的日期和時間函數(shù),沒找到合適的函數(shù)。
以前曾經(jīng)做過類似的東西,大概是判斷數(shù)字是否小于10,然后追加前導0。(剛看了點算法的東西,順便用一下,咱也來寫個偽代碼:P)
//date()為獲得當前日期的函數(shù),默認格式y(tǒng)yyy-mm-dd mm和dd可能只有個位數(shù)字
//year(),month(),day()是從日期中抽取相應的數(shù)字
//strID就是要得到的結(jié)果了
strID=year(date())&formatStr(month(date()))&formatStr(day(date()))
formatStr(m)
//m為要格式化的數(shù)字
if cInt(m)<10
m=0&cInt(m)
return m
這樣實現(xiàn)很直接,下面有更直接的,直接提取十位數(shù)字跟個位數(shù)字,然后拼起來就行了。
偽代碼:
formatChar(m)
m=fix(m/10)&(m-fix(m/10)*10)
return m
其實差不多,只是下面這個可以不用寫函數(shù),直接寫在一行里面就行了。
strid=year(date())&fix(month(date())/10)&(month(date())-fix(month(date())/10)*10)&fix(day(date())/10)&(day(date())-fix(day(date())/10)*10)
---------------
以上這個太煩了,僅做為參考。
個人認為還是下面這個好用,簡單易用:
today=Year(Date()) & “-” & Right(“0” & Month(Date()),2) & “-” & Right(“0” & Day(Date()),2)
---------------
記住了:
Right(“0” & Month(Date()),2)
將簡單方便進行到底!