C# 离约会时间还有一小时?24小时制
那么我这次有约会了?我想做的是获取小时,但以24小时格式显示。C# 离约会时间还有一小时?24小时制,c#,datetime,C#,Datetime,那么我这次有约会了?我想做的是获取小时,但以24小时格式显示。 例如: 如果时间是下午2:20:23,我想把它改成14:20,就这样 我正在使用Visual C。 有什么想法吗,谢谢 我有类似的东西 public static string FormatearHoraA24(DateTime? fechaHora) { if (!fechaHora.HasValue) return ""; string retornar = ""; //here goe
例如:
如果时间是下午2:20:23,我想把它改成14:20,就这样 我正在使用Visual C。 有什么想法吗,谢谢 我有类似的东西
public static string FormatearHoraA24(DateTime? fechaHora)
{
if (!fechaHora.HasValue)
return "";
string retornar = "";
//here goes what i need
}
试试这个:
//String.Format("{0:HH:mm}", dt); // where dt is a DateTime variable
public static string FormatearHoraA24(DateTime? fechaHora)
{
if (!fechaHora.HasValue)
return "";
return retornar = String.Format("{0:HH:mm}", (DateTime)fechaHora);
}
您可以使用下面的代码获得所需的结果。
HH
中的两个“H”表示24小时格式
return fechaHora.Value.ToString("HH:mm");
请参阅DateTime中其他格式化程序的链接。使用ToString(“HH:mm”)
当然可以提供您想要的字符串格式
如果希望当前小时/分钟为数字,则不需要字符串操作;您可以使用TimeOfDay
属性:
TimeSpan timeOfDay = fechaHora.TimeOfDay;
int hour = timeOfDay.Hours;
int minute = timeOfDay.Minutes;
我喜欢这个方法,因为它给我整数值进行计算。这是我的首选解决方案,因为我只需要从一天中的小时开始计算整数。转换成字符串只是为了再次解析回DateTime要容易得多。您不需要TimeOfDay。你可以使用fechaHora.Hour,得到一个从0到23的数字。@OrelEraki你是认真的吗?这个问题是两年前发布的。至少在打电话给duplicate之前检查一下你的事实。没有必要退出,那是在2014年。删除它。小写的“hh”表示am/pm符号,“hh”表示24小时符号说明为什么这项工作会有用。例如,24小时格式为HH,12小时格式为HH。是否有办法将am或pm显示为文本?还是我必须补充什么?
TimeSpan timeOfDay = fechaHora.TimeOfDay;
int hour = timeOfDay.Hours;
int minute = timeOfDay.Minutes;
Try this, if your input is string
For example
string input= "13:01";
string[] arry = input.Split(':');
string timeinput = arry[0] + arry[1];
private string Convert24To12HourInEnglish(string timeinput)
{
DateTime startTime = new DateTime(2018, 1, 1, int.Parse(timeinput.Substring(0, 2)),
int.Parse(timeinput.Substring(2, 2)), 0);
return startTime.ToString("hh:mm tt");
}
out put: 01:01