Поделиться через


Функция ms:format-date

Преобразует стандартные форматы дат XSD в строки для вывода.

string ms:format-date(string datetime, string format [,locale])

Параметры

  • string datetime
    Содержит данные о дате в формате XSD. Для нестроковых аргументов функция ведет себя так, будто была применена функция string(). Если аргумент не является датой, то возвращается пустая строка. Если аргумент является допустимой датой в формате XSD и некоторые поля пусты, то функция пытается заполнить отсутствующие поля.

  • string format
    Содержит строку форматирования, соответствующую функциям Win32 API GetDateFormat.

  • locale [дополнительно]
    Определяет языковые стандарты форматирования данных (например, "RU_ru").

Заметки

Далее перечислены символы форматирования для функции ms:format-date().

Символы

Описание

M

Месяцы (в формате 1–12)

ММ

Месяцы (в формате 01-12)

МММ:

Месяцы (в формате янв-дек)

ММММ:

Месяцы (названия полностью)

d

Дни (в формате 1-31)

dd

Дни (в формате 01-31)

ddd

Дни недели (в формате пон-вс)

dddd

Дни недели (названия полностью)

y

Годы как 0-99

yy

Годы в формате 00-99

yyyy

Годы как 1900-9999

gg

Период/эра (если эта часть даты отсутствует, она пропускается)

Следует отметить, что этот формат не содержит сведений часовых поясах. Кроме того, он не позволяет включать в форматируемые строки произвольный текст, не указываются века, не допускаются суффиксы (1-е мая, 2-е апреля).

Пример

XML-документ (Sample.xml)

<?xml version='1.0'?>
<XMLSamples xml:space="preserve"
         xmlns:dt="urn:schemas-microsoft-com:datatypes">
  <FileDetails>
   <Author>Robert Brown</Author>
   <Date dt:dt="datetime">2000-02-16T15:56:00</Date>
  </FileDetails>
</XMLSamples>

Таблица стилей XSLT (Sample.xsl)

<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
      xmlns:ms="urn:schemas-microsoft-com:xslt"
      xmlns:dt="urn:schemas-microsoft-com:datatypes">
  <xsl:template match="/">
  <HTML>
  <HEAD>
  </HEAD>
  <BODY> 
   <xsl:for-each select="XMLSamples/FileDetails/Date">
      <DIV>
          Date Unedited:
          <xsl:value-of select="."/>
      </DIV>
      <DIV>
          Date Edited:
          <xsl:value-of select="ms:format-date(., 'MMM dd, yyyy')"/>
      </DIV>
   </xsl:for-each>
  </BODY> 
  </HTML>
</xsl:template>
</xsl:stylesheet>

ms256099.collapse_all(ru-ru,VS.120).gifВывод

Далее приведена выходная HTML-страница.

Date Unedited: 2000-02-16T15:56:00
Date Edited: Feb 16, 2000

См. также

Ссылки

Справочник по XML-схемам (XSD)

Справочник по типам данных XML