如何获得当前时间(而不是日期和时间)?
例如:下午5:42:12
DateTime.Now.TimeOfDay将它作为TimeSpan(从午夜开始)提供给你。
DateTime.Now.TimeOfDay
TimeSpan
DateTime.Now.ToString("h:mm:ss tt")将它作为字符串提供给你。
DateTime.Now.ToString("h:mm:ss tt")
DateTime引用:https://msdn.microsoft.com/en-us/library/system.datetime
获取当前日期和时间,然后只使用它的时间部分。查看在MSDN文档中格式化日期时间字符串的可能性。
Datetime.TimeOfDay返回一个TimeSpan,可能就是你要找的。
Datetime.TimeOfDay
或
DateTime.Now.ToShortTimeString()
带AM/PM指示器的当前时间:
DateTime.Now.ToString("hh:mm:ss tt", System.Globalization.DateTimeFormatInfo.InvariantInfo) DateTime.Now.ToString("hh:mm:ss.fff tt", System.Globalization.DateTimeFormatInfo.InvariantInfo)
当前时间使用0-23小时记数法:
DateTime.Now.ToString("HH:mm:ss", System.Globalization.DateTimeFormatInfo.InvariantInfo) DateTime.Now.ToString("HH:mm:ss.fff", System.Globalization.DateTimeFormatInfo.InvariantInfo)
这将只显示当前时间,以24小时格式显示:
class Program { static void Main(string[] args) { Console.WriteLine(DateTime.Now.ToLongTimeString().ToString()); Console.WriteLine(DateTime.Now.ToShortTimeString().ToString()); Console.ReadLine(); } }
使用String.Format()的另一个选项
string.Format("{0:HH:mm:ss tt}", DateTime.Now)
试试这个。它为我工作在3tier架构Web应用程序。
"'" + DateTime.Now.ToString() + "'"
请记住插入查询中的单引号。
例如:
string Command = @"Insert Into CONFIG_USERS(smallint_empID,smallint_userID,str_username,str_pwd,str_secquestion,str_secanswer,tinyint_roleID,str_phone,str_email,Dt_createdOn,Dt_modifiedOn) values (" + u.Employees + "," + u.UserID + ",'" + u.Username + "','" + u.GetPassword() + "','" + u.SecQ + "','" + u.SecA + "'," + u.RoleID + ",'" + u.Phone + "','" + u.Email + "','" + DateTime.Now.ToString() + "','" + DateTime.Now.ToString() + "')";
行尾的DateTime插入。
DateTime
计算当前的datetime:
DateTime theDate = DateTime.UtcNow; string custom = theDate.ToString("d"); MessageBox.Show(custom);
试试这个:
DateTime.Now.ToString("HH:mm:ss tt");
对于其他格式,您可以检查这个站点:c#日期时间格式
这个会好些,试试这个
DateTime.Now.ToShortTimeString();
为此,您不需要指定时间的格式。
非常简单的DateTime.Now.ToString("hh:mm:ss tt")
DateTime.Now.ToString("hh:mm:ss tt")
MyEmail.Body = string.Format("The validation is done at {0:HH:mm:ss} Hrs.",DateTime.Now);
可以使用{0:HH:mm:ss}, {0:HH:mm:ss.fff}, {0:DD/mm/yyy HH:mm:ss}等…
{0:HH:mm:ss}
{0:HH:mm:ss.fff}
{0:DD/mm/yyy HH:mm:ss}
这是一个可能的解决方案:
DateTime now = DateTime.Now; string time = now.ToString("T");
开始吧:
DateTime time = DateTime.Now; Console.WriteLine(time.ToString("h:mm:ss tt"));
例子:
using System; namespace JD { class Program { public static DateTime get_UTCNow() { DateTime UTCNow = DateTime.UtcNow; int year = UTCNow.Year; int month = UTCNow.Month; int day = UTCNow.Day; int hour = UTCNow.Hour; int min = UTCNow.Minute; int sec = UTCNow.Second; DateTime datetime = new DateTime(year, month, day, hour, min, sec); return datetime; } static void Main(string[] args) { DateTime datetime = get_UTCNow(); string time_UTC = datetime.TimeOfDay.ToString(); Console.WriteLine(time_UTC); Console.ReadLine(); } } }
我添加了TimeOfDay方法来显示你得到的默认时间是24小时也就是从午夜开始的时间
你可以使用我的getter方法();: - d
var CurDate= DateTime.Now; CurDate.Hour; CurDate.Minute; CurDate.Millisecond
DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt");
试着用它来满足你的需要
使用下面的代码
我认为这段代码将解决您的问题
DateTime.Now.ToString("HH:mm")
在我的情况下,我使用下面的代码从DateTime单独获得时间。
var currentDateTime = DateTime.Now; var currentTimeAlone = new TimeSpan(currentDateTime.Hour, currentDateTime.Minute, currentDateTime.Second); Console.WriteLine(currentTimeAlone);
希望它能对某些人有所帮助。:)