удаление «T» из даты и времени при выполнении xml + xsl = html с .net (XmlDataDocument, XslCompiledTransform, XmlTextWriter) - PullRequest
0 голосов
/ 27 ноября 2008

Какой самый простой способ удалить «Т» из результата?

Я хочу, чтобы результат был "ГГГГ / ММ / ДД ЧЧ / ММ / СС"

код vb.net действительно прост

        xmlDoc = New Xml.XmlDataDocument(data_set)
        xslTran = New Xml.Xsl.XslCompiledTransform
        xslTran.Load(strXslFile)
        writer = New Xml.XmlTextWriter(strHtmlFile, System.Text.Encoding.UTF8)

        xslTran.Transform(xmlDoc, Nothing, writer)

        writer.Close()

спасибо!

Ответы [ 2 ]

0 голосов
/ 28 ноября 2008

Вы также можете использовать функции substring-before и substring-after в вашем XSLT-файле.

<xsl:value-of select="substring-before(@datetime, 'T')" />
<xsl:text> </xsl:text>
<xsl:value-of select="substring-after(@datetime, 'T')"/>

В качестве альтернативы, вы можете использовать функцию перевода, чтобы заменить T пробелом.

<xsl:value-of select="translate(@datetime,'T',' ')"/>
0 голосов
/ 27 ноября 2008

Это более читабельный способ сделать это:

<xsl:value-of select="substring(., 1, 10)"/>
<xsl:text> </xsl:text>
<xsl:value-of select="substring(., 12, 8)"/>

Это менее читабельно, но более кратко:

<xsl:value-of select="concat(substring(., 1, 10), ' ', substring(., 12, 8))"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...