将日期时间转换为日期格式dd/mm/yyyy

Asw*_*thi 54 .net c#

我有一个对象2/19/2011 12:00:00 AM.我想将此对象转换为19/2/2011.请给我最可能的答案

将datetime转换为字符串格式.

Kar*_*rel 90

DateTime dt = DateTime.ParseExact(yourObject.ToString(), "MM/dd/yyyy hh:mm:ss tt", CultureInfo.InvariantCulture);

string s = dt.ToString("dd/M/yyyy", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

  • DateTime dt = DateTime.ParseExact("10/1/2016 4:36:37 PM", "MM/dd/yyyy hh:mm:ss tt", CultureInfo.InvariantCulture); 我收到一个错误,字符串未被识别为有效的日期时间。 (3认同)

Jef*_*ado 20

首先,您不会将DateTime对象转换为某种格式,而是以某种格式显示它.

给定一个DateTime对象的实例,您可以像这样获得格式化的字符串:

DateTime date = new DateTime(2011, 2, 19);
string formatted = date.ToString("dd/M/yyyy");
Run Code Online (Sandbox Code Playgroud)


xan*_*tos 16

正如其他人所说,但请记住CultureInfo.InvariantCulture!

string s = dt.ToString("dd/M/yyyy", CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)

或者逃避'/'.

  • 并非所有区域性都将/用作日期分隔符。有些人写dd-MM-yyyy。框架将格式字符串中的/转换为当前区域性的日期分隔符(执行时为当前)。但是您要始终使用/分隔符。第二个选项(或OR转义...)是“转义” /,以使ToString不会将其视为日期分隔符,而应将其视为“固定”字符。您使用'\'进行转义,因此它应为@“ dd \ / M \ / yyyy”(@是因为否则您必须转义\,因此为“ dd \\ / M \\ / yyyy”)。它们都不是很可读,因此最好修复CultureInfo。 (2认同)

小智 9

DateTime.ToString("dd/MM/yyyy")可以以dd-MM-yyyy格式给出日期.这取决于您的短日期格式.如果短日期格式不符合格式,我们必须将字符' - '替换为'/',如下所示:

 date = DateTime.Now.ToString("dd/MM/yyyy").Replace('-','/');
Run Code Online (Sandbox Code Playgroud)


小智 7

这很简单 - tostring()接受这种格式的参数......

DateTime.ToString("dd/MM/yyyy");
Run Code Online (Sandbox Code Playgroud)


小智 7

你必须通过CultureInfo来获得斜杠(/)的结果

DateTime.Now.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)