如何将字符串转换为日期时间格式,如MM / dd / yyyy

时间:2012-11-20 03:36:35

标签: c#-4.0 datetime

我得到的字符串值如01/05/2012(MM / dd / yyyy),现在我必须转换为datetime

string s="01/05/2012";
datetime dt=convert.todatetime(s);

现在dt值是1/5/2012,但我必须得到dt值01/05/2012,如何获得价值,请告诉我任何想法。

由于 hemanth

1 个答案:

答案 0 :(得分:1)

您正在正确创建DateTime对象,您只是在查看DateTime的内部表示。它的输出方式取决于您为其ToString方法提供的格式字符串。 即:

class Program
{
    static void Main(string[] args)
    {
        string s = "01/05/2012";
        DateTime dt = Convert.ToDateTime(s);
        Console.WriteLine(dt.ToString("MM/dd/yyyy"));
        Console.ReadLine();
    }
}

如果您在DateTime Structure

上查看此MSDN页面

从上面链接突出显示我的

  

DateTime值及其字符串表示

     

在内部,所有DateTime值都表示为自0001年1月1日午夜12:00:00起经过的刻度数(100纳秒间隔的数量)。实际的DateTime值与中的方式无关。当在用户界面元素中显示或写入文件时,该值会出现。 DateTime值的出现是格式化操作的结果。格式化是将值转换为字符串表示形式的过程。

     

由于日期和时间值的出现取决于文化,国际标准,应用程序要求和个人偏好等因素,因此 DateTime结构在通过重载格式化日期和时间值方面提供了极大的灵活性其ToString方法。默认的DateTime.ToString()方法使用当前区域性的短日期和长时间模式返回日期和时间值的字符串表示形式。