C# DateTime.ToString的坑

当须要将时间类型转换为字符串类型时,通常直接使用datetime.ToString()方法便可spa

一、直接使用ToString(),不带任何参数,代码以下code

static void Main(string[] args)
{
    //2016-12-15 12:12:12
    var dt = new DateTime(2016, 12, 15, 12, 12, 12);

    Console.WriteLine(dt.ToString());

    Console.ReadKey();
}

不建议使用这种方式,由于输出的字符串格式将会匹配运行电脑的时间格式,会致使在不一样的环境下,输出结果的不一致。orm

 

二、在ToString中指定输出的字符串格式,示例以下blog

 

 这就是我所讲的坑所在了,指定了字符串格式,可是却没有输出相应的结果,仍然按照当前环境的时间格式进行输出。字符串

 

三、在ToString中指定输出的字符串格式,并指定DateTimeFormatInfo参数,示例以下string

这样才能真正输出与环境无关的特定格式的时间字符串。it

相关文章
相关标签/搜索