::删除N天以前的数据
set d=%date:~0,10%
mshta 
vbscript:createobject("scripting.filesystemobject").opentextfile("temp.txt",2,true).write(dateadd("d",-%daysAgo%+1,"%d%"))(window.close)上面这段代码是创建一个temp.txt文档,dateadd获得的是N天前的日期,之后写入temp.txt文件。
现在有个问题,就是时间的格式问题:
今天的日期是12月8号,减去5天的日期应是12月3号,我想在temp.txt中日期显示格式是2011-12-03,而不是2011-12-3我加上了format命令,但是报错。代码如下:
vbscript:createobject("scripting.filesystemobject").opentextfile("temp.txt",2,true).write(format(dateadd("d",-%daysAgo%+1,"%d%"),"yyyy-mm-dd"))(window.close)
哪个大侠能给解决一下?谢谢了!!!

解决方案 »

  1.   

    Format 函数
          返回 Variant (String),其中含有一个表达式,它是根据格式表达式中的指令来格式化的。语法Format(expression[, format[, firstdayofweek[, firstweekofyear]]])Format 函数的语法具有下面几个部分:部分 说明 
    expression 必要参数。任何有效的表达式。 
    format 可选参数。有效的命名表达式或用户自定义格式表达式。 
    firstdayofweek 可选参数。常数,表示一星期的第一天。 
    firstweekofyear 可选参数。常数,表示一年的第一周。 
    设置值firstdayofweek 参数有下面设置:常数 值 说明 
    vbUseSystem 0 使用 NLS API 设置。 
    VbSunday 1 星期日(缺省) 
    vbMonday 2 星期一 
    vbTuesday 3 星期二 
    vbWednesday 4 星期三 
    vbThursday 5 星期四 
    vbFriday 6 星期五 
    vbSaturday 7 星期六 
    firstweekofyear 参数有下面设置:常数 值 说明 
    vbUseSystem 0 使用 NLS API 设置。 
    vbFirstJan1 1 从包含一月一日的那一周开始(缺省)。 
    vbFirstFourDays 2 从本年第一周开始,而此周至少有四天在本年中。 
    VbFirstFullWeek 3 从本年第一周开始,而此周完全在本年中。 
    说明格式化 作法 
    数字 使用预先定义的命名数值格式或创建用户自定义数值格式。 
    日期和时间 使用预先定义的命名日期/时间格式或创建用户自定义日期/时间格式。 
    日期和时间序数 使用日期和时间格式或数值格式。 
    字符串 创建自定义的字符串格式。 
    如果在格式化数字时没有指定 format,Format 会提供与 Str 函数类似的功能,尽管它是国际化的。然而,以 Format 作用在正数上不会保留正负号空间,而以 Str 的话则会。
      

  2.   

    出错是当然的,vbscript下没有format函数,请使用FormatDateTime函数。
      

  3.   

    FormatDateTime函数的vbShortDate格式显示的还是2011-12-3啊!!!!
      

  4.   

    解决了  原来是在控制面板里的“区域和语言选项”里面设置短日期的格式,再用FormatDateTime就行了。感谢1楼,更感谢3楼 发分