使用c#转换给定格式的标准日期时间格式

时间:2015-06-25 13:43:01

标签: c# datetime

我需要将c#中的日期时间转换为特定格式,即2002-09-24 + 06:00。

我希望结果在Datetime变量而不是字符串,因为我需要将其传递给期望以该格式的Datetime的SOAP调用。

我怎样才能得到这个结果?

2 个答案:

答案 0 :(得分:0)

DateTime对象没有格式,只将日期存储为值。如果您的Web服务期望采用特殊格式,我确实需要string

你可以像这样获得这个特殊的格式化字符串:

String.Format("{YOUR_FORMAT}", YOUR_DATETIME_OBJECT);

如果您的SOAP需要xs:dateTime类型,请使用以下格式作为string

YOUR_DATETIME_OBJECT.ToString("o")

这将为您提供以下格式:YYYY-MM-DDThh:mm:ss

答案 1 :(得分:0)

传递DateTime对象,但使用DateTime.ToString()方法对其进行相应格式化:

MSDN:Custom Date and Time Format Strings

C#代码

protected void Page_Load(object sender, EventArgs e) {
    DateTime dd;
    String dd_format = "yyyy-MM-dd+HH:mm";

    dd = new DateTime(2002, 9, 24, 6, 0, 0);
    Response.Write(dd.ToString(dd_format) + "<BR />");

    dd = new DateTime(2002, 9, 24, 13, 0, 0);
    Response.Write(dd.ToString(dd_format) + "<BR />");
}

<强>输出

2002-09-24+06:00

2002-09-24+13:00