日期时间值替换为字符串c#

本文关键字:字符串 替换 时间 日期 | 更新日期: 2023-09-27 18:14:26

我有一个datetime值,

23/07/2014 04:15:00

如何获得日期如下字符串值

23/07/2014 

我怎么能得到小时如下字符串值

04:15 AM/PM (depends hour time)

任何帮助都将不胜感激。

谢谢。

日期时间值替换为字符串c#

我会先将字符串解析为DateTime,以避免字符串操作。

var str = "23/07/2014 04:15:00";
var dt = DateTime.ParseExact(str, "dd/MM/yyyy HH:mm:ss", CultureInfo.InvariantCulture);
var date = dt.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture);//23/07/2014
var time = dt.ToString("hh:mm tt", CultureInfo.InvariantCulture);//04:15 AM

如果您的值为DateTime,则可以跳过ParseExact部分。

我不确定你是否真的使用DateTime而不是字符串,但你应该。如果没有,您可以使用DateTime.Parse/DateTime.TryParseExactstring中获得DateTime

DateTime有方法ToShortDateString

string dateOnly = dt.ToShortDateString();
// or to force / as separator even if current culture has different separator
dateOnly = dt.ToString("d", CultureInfo.InvariantCulture);
// hour+minute and AM/PM designator:
string hour = DateTime.Now.ToString("hh:mm tt", CultureInfo.InvariantCulture);

强烈觉得冒个险回答你的问题,但是…不管怎样。

如何获得日期如下字符串值

DateTime dt = new DateTime(2014, 7, 23, 4, 15, 0);
Console.WriteLine(dt.ToString(@"dd'/MM'/yyyy")); // 23/07/2014

我转义了/字符,因为它在自定义日期和时间格式字符串中具有特殊含义。它的意思是;用当前区域性日期分隔符替换me。查看"/"自定义格式说明符了解更多信息。

我怎么能得到小时如下字符串值

Console.WriteLine(dt.ToString("HH:mm tt", CultureInfo.InvariantCulture));

输出将是;

04:15 AM