Параметры форматирования даты по умолчанию ограничены в классическом ASP, существует функция FormatDateTime()
, которая может форматировать вашу дату различными способами на основе региональных настроек серверов.
Для большего контроля над форматирования даты, хотя есть встроенные функции времени даты
Year(date)
- Возвращает целое число, представляющее год. Передача Date()
вернет текущий год.
Month(date)
- Возвращает целое число от 1 до 12 включительно, представляющее месяц года. Передача Date()
вернет текущий месяц в году.
MonthName(month[, abbv])
- Возвращает строку, указывающую указанный месяц. Переход в Month(Date())
, так как месяц вернет текущую строку месяца. По предложению @Martha
Day(date)
- Возвращает целое число от 1 до 31 включительно, представляющее день месяца. Передача Date()
вернет текущий день месяца.
Hour(time)
- Возвращает целое число от 0 до 23 включительно, представляющее собой час дня. Передача Time()
вернет текущий час.
Minute(time)
- Возвращает целое число от 0 до 59 включительно, представляющее минуту часа. Передача Time()
вернет текущую минуту.
Second(time)
- Возвращает целое число в диапазоне от 0 до 59, включительно, представляющее секунду минуты. Передача Time()
вернет текущую секунду.
Функции Month()
, Day()
, Hour()
, Minute()
и Second()
возвращают целые числа. К счастью, есть легкое обходное решение, позволяющее быстро набирать эти значения. Right("00" & value, 2)
то, что он делает, это добавить 00
в начало значения, а затем справа взять первые два символа. Это гарантирует, что все однозначные значения возвращаются с префиксом 0
.
Dim dd, mm, yy, hh, nn, ss
Dim datevalue, timevalue, dtsnow, dtsvalue
'Store DateTimeStamp once.
dtsnow = Now()
'Individual date components
dd = Right("00" & Day(dtsnow), 2)
mm = Right("00" & Month(dtsnow), 2)
yy = Year(dtsnow)
hh = Right("00" & Hour(dtsnow), 2)
nn = Right("00" & Minute(dtsnow), 2)
ss = Right("00" & Second(dtsnow), 2)
'Build the date string in the format yyyy-mm-dd
datevalue = yy & "-" & mm & "-" & dd
'Build the time string in the format hh:mm:ss
timevalue = hh & ":" & nn & ":" & ss
'Concatenate both together to build the timestamp yyyy-mm-dd hh:mm:ss
dtsvalue = datevalue & " " & timevalue
Call Response.Write(dtsvalue)
Примечание:Вы можете построить строку даты в одном вызове, но решил разбить его на три переменные, чтобы сделать его более удобным для чтения.
'дим newDate As String = DateTime.ParseExact (RS ("StayDate"). Value "DD-MM-YYYY", CultureInfo.InvariantCulture) .ToString ("дд гггг/мм /")' –
@ dholakiyaankit: это не VBScript. – Martha