为什么DateTime.ToString("dd/MM/yyyy")给我dd-MM-yyyy?



我希望将我的日期时间转换为格式为"dd/MM/yyyy"的字符串

每当我使用DateTime.ToString("dd/MM/yyyy")转换它时,我都会得到dd-MM-yyyy

有什么文化信息需要我设置吗?

Slash是一个日期分隔符,因此将使用当前区域性日期分隔符。

如果你想硬编码它总是使用斜杠,你可以这样做:

DateTime.ToString("dd'/'MM'/'yyyy")

传递CultureInfo。InvariantCulture作为DateTime的第二个参数,它将根据您的需要返回字符串,甚至是一种非常特殊的格式:

DateTime.Now.ToString("dd|MM|yyyy", CultureInfo.InvariantCulture)

将返回:2014年2月28日

添加CultureInfo.InvariantCulture作为参数:

using System.Globalization;
...
var dateTime = new DateTime(2016,8,16);
dateTime.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture);

将返回:

"16/08/2016"

如果你使用MVC,表,它的工作原理如下:

<td>@(((DateTime)detalle.fec).ToString("dd'/'MM'/'yyyy"))</td>

试试这个。

 @foreach (DataRow _Row in CashBook2.Rows)
            {
                <tr>
                    <td>@DateTime.Parse(_Row["Vou_Date"].ToString()).ToString(DateFormat)</td>
                    <td>@_Row["Vou_No"].ToString()</td>
                    <td>@_Row["Description"].ToString()</td>
                    <td>@decimal.Parse(_Row["DR"].ToString()).ToString(NumFormat)</td>
                    <td>@decimal.Parse(_Row["CR"].ToString()).ToString(NumFormat)</td>
                    <td>@Balance</td>
                </tr>
            }

也许是个愚蠢的问题/答案,但你尝试过dd/MM/yyyy吗?注意大写。

mm表示以零开头的分钟。所以我怀疑这是你想要的。

这可能会有所帮助:http://www.geekzilla.co.uk/View00FF7904-B510-468C-A2C8-F859AA20581F.htm

相关内容

  • 没有找到相关文章