将DateTime转换为字符串

Nom*_*are 8 .net c# datetime

我想转换DateTimeString.

检查以下代码.

namespace TestDateConvertion
{
    class Program
    {
        static void Main(string[] args)
        {
            object value = new DateTime(2003,12,23,6,22,30);
            DateTime result = (DateTime)value;
            Console.WriteLine(result.ToString("dd/MM/yyyy"));
            Console.ReadLine();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我已将系统日期格式更改为Faeroese.

我得到的输出为

23-12-2013

我应该如何获得输出?

23/12/2013

并考虑另一种情况,假设,我有一个Customculture Info,我想将我的日期转换为我的自定义文化,我之前做的是如下,

string.Format(customCulture, "{0:G}", result);
Run Code Online (Sandbox Code Playgroud)

现在我如何使用customCulture获取字符串中的日期时间,它不应该依赖于系统DateTime?

Son*_*nül 13

看起来你的文化的日期分隔符-正如蒂姆所指出的那样,/取而代之.

您应该CultureInfo.InvariantCultureresult.ToString()方法中使用第二个参数.

获取与文化无关(不变)的CultureInfo对象.

object value = new DateTime(2003, 12, 23, 6, 22, 30);
DateTime result = (DateTime)value;
Console.WriteLine(result.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture));
Run Code Online (Sandbox Code Playgroud)

输出将是;

23/12/2003
Run Code Online (Sandbox Code Playgroud)

这是一个DEMO.

  • 酷我不知道[ideone](http://ideone.com/0ZU9Wg) (2认同)