2011-08-10 112 views
10

Cómo obtengo la fecha y hora actual usando VBS (para Windows. No estoy buscando VBScript para ASP/ASPX o páginas web).Cómo obtengo la Fecha y hora (VBS)

+0

http://www.w3schools.com/ vbscript/func_date.asp – asawyer

+0

asawyer eso es para páginas web. No busca páginas web. Incluso si su respuesta fue correcta, no puedo darle crédito porque la agregó como comentario. –

Respuesta

2

Para exponer sobre la respuesta de Númenor se puede hacer algo así, Format (Now(), "hh: mm: ss") el uso de estos custom date/time opciones de formateo


Para todos los que están tentados a downvote este respuesta, tenga en cuenta que la pregunta se etiquetó originalmente VB y vbscript, por lo tanto, mi respuesta, la etiqueta VB se editó dejando solo la etiqueta vbscript. El OP aceptó esta respuesta, lo que significa que le dio la información que necesitaba.

+11

-1, porque Format() no es VBScript, sino VB.NET. –

+1

@ Ekkehard.Horner Parece que te has perdido la etiqueta Vb que Joel Coehoorn editó el 27 de febrero. Esta pregunta fue etiquetada originalmente como Vb y VBScript, por lo tanto, la respuesta que di, y parecía cumplir con los requisitos del OP ya que él la marcó como la respuesta. –

+0

Solo quiero que la respuesta sea correcta para la pregunta tal como está ahora. No debería haber votado, mis disculpas. –

1

now devuelve la fecha y hora actuales

+1

¿Puedo manipular la cadena devuelta? por ejemplo. Quiero tener la hora en formato de 24 horas (sin AM/PM) –

1

También están separadas Time() y Date() funciones.

4

Para VBScript use FormatDateTime, que tiene 5 argumentos numéricos para darle uno de los 5 formatos predefinidos. No es genial

FormatDateTime(now, 4) 
    08:12 
31

Aquí hay varios fecha y la hora se puede tirar en VBScript se ejecuta en Windows Script Host (WSH):

Now = 2/29/2016 1:02:03 PM 
Date = 2/29/2016 
Time = 1:02:03 PM 
Timer = 78826.31  ' seconds since midnight 

FormatDateTime(Now)    = 2/29/2016 1:02:03 PM 
FormatDateTime(Now, vbGeneralDate) = 2/29/2016 1:02:03 PM 
FormatDateTime(Now, vbLongDate) = Monday, February 29, 2016 
FormatDateTime(Now, vbShortDate) = 2/29/2016 
FormatDateTime(Now, vbLongTime) = 1:02:03 PM 
FormatDateTime(Now, vbShortTime) = 13:02 

Year(Now) = 2016 
Month(Now) = 2 
Day(Now) = 29 
Hour(Now) = 13 
Minute(Now) = 2 
Second(Now) = 3 

Year(Date) = 2016 
Month(Date) = 2 
Day(Date) = 29 

Hour(Time) = 13 
Minute(Time) = 2 
Second(Time) = 3 

Function LPad (str, pad, length) 
    LPad = String(length - Len(str), pad) & str 
End Function 

LPad(Month(Date), "0", 2) = 02 
LPad(Day(Date), "0", 2)  = 29 
LPad(Hour(Time), "0", 2)  = 13 
LPad(Minute(Time), "0", 2) = 02 
LPad(Second(Time), "0", 2) = 03 

Weekday(Now)      = 2 
WeekdayName(Weekday(Now), True) = Mon 
WeekdayName(Weekday(Now), False) = Monday 
WeekdayName(Weekday(Now))  = Monday 

MonthName(Month(Now), True) = Feb 
MonthName(Month(Now), False) = February 
MonthName(Month(Now))  = February 

Set os = GetObject("winmgmts:root\cimv2:[email protected]") 
os.LocalDateTime = 20131204215346.562000-300 
Left(os.LocalDateTime, 4) = 2013 ' year 
Mid(os.LocalDateTime, 5, 2) = 12 ' month 
Mid(os.LocalDateTime, 7, 2) = 04 ' day 
Mid(os.LocalDateTime, 9, 2) = 21 ' hour 
Mid(os.LocalDateTime, 11, 2) = 53 ' minute 
Mid(os.LocalDateTime, 13, 2) = 46 ' second 

Set timeZones = wmi.ExecQuery("SELECT Bias, Caption FROM Win32_TimeZone") 
For Each tz In timeZones 
    tz.Bias = -300 
    tz.Caption = (UTC-05:00) Eastern Time (US & Canada) 
Next 

Source