1

Тема: VBS: Как преобразовать дату модификации файла к формату ГГГГММДД?

Не могу понять как преобразовать дату модификации файла к формату ГГГГММДД, например 20130304. Сейчас получаю дату так FormatDateTime(File.DateLastModified ,vbShortDate), но это дает такой вид 04.03.2013

2

Re: VBS: Как преобразовать дату модификации файла к формату ГГГГММДД?

griha09, к сожалению, только ручками. Функция «FormatDateTime()» в WSH очень ограничена по сравнению с тем же VBA, не говоря уже про VB.Net. Можно так:

Option Explicit

WScript.Echo FormatDateTimeYYYYMMDD(WScript.CreateObject("Scripting.FileSystemObject").GetFile("c:\boot.ini").DateLastModified)

WScript.Echo FormatDateTimeYYYYMMDD(#01/31/2013#)
WScript.Echo FormatDateTimeYYYYMMDD("31.01.2013")

' Следующая строка вызовет ошибку. Для демонстрации
WScript.Echo FormatDateTimeYYYYMMDD("29.02.2013")

WScript.Quit 0
'=============================================================================

'=============================================================================
Function FormatDateTimeYYYYMMDD(dtDate)
    If IsDate(dtDate) Then
        FormatDateTimeYYYYMMDD = _
            Right("0000" & Year(CDate(dtDate)),  4) & _
            Right("00"   & Month(CDate(dtDate)), 2) & _
            Right("00"   & Day(CDate(dtDate)),   2)
    Else
        Err.Raise 13, "FormatDateTimeYYYYMMDD", "Несоответствие типа параметра [dtDate]"
    End If
End Function
'=============================================================================

3

Re: VBS: Как преобразовать дату модификации файла к формату ГГГГММДД?

Большое спасибо за помошь