【发布时间】:2010-09-22 18:05:00
【问题描述】:
你如何获得当前时间(不是日期和时间)?
例如:下午 5:42:12
【问题讨论】:
你如何获得当前时间(不是日期和时间)?
例如:下午 5:42:12
【问题讨论】:
DateTime.Now.TimeOfDay 将其作为TimeSpan 提供给您(从午夜开始)。
DateTime.Now.ToString("h:mm:ss tt") 将其作为 字符串 提供给您。
日期时间参考:https://msdn.microsoft.com/en-us/library/system.datetime
【讨论】:
【讨论】:
另一个使用 String.Format() 的选项
string.Format("{0:HH:mm:ss tt}", DateTime.Now)
【讨论】:
带有 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)
【讨论】:
5:00 PM 这样的小时数”,而 OP 仅(并且明确地)提到了特定的日期格式作为示例。你甚至对@Musikero31's answer 投了反对票,但它提到了任何人都可以在其中查找他们正在寻找的格式字符串的页面。
DateTime.Now 格式化为字符串需要a 格式,他们必须放入something。这并没有使它成为错误的答案,但如果您认为应该有另一种格式,请随时编辑它们。我的意思是我对被否决的答案投了赞成票。
DateTime.Now.TimeOfDay
或
DateTime.Now.ToShortTimeString()
【讨论】:
我们开始吧:
DateTime time = DateTime.Now;
Console.WriteLine(time.ToString("h:mm:ss tt"));
【讨论】:
t 时间应大写。为您修复它。
DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt");
试一试,充分满足您的需求
【讨论】:
这个会更好,试试这个
DateTime.Now.ToShortTimeString();
为此,您无需指定时间格式。
【讨论】:
Datetime.TimeOfDay 返回一个TimeSpan,可能就是您要查找的内容。
【讨论】:
获取当前日期和时间,然后只使用其中的时间部分。查看在MSDN docs 中格式化日期时间字符串的可能性。
【讨论】:
这可能是一个可能的解决方案:
DateTime now = DateTime.Now;
string time = now.ToString("T");
【讨论】:
var CurDate= DateTime.Now;
CurDate.Hour;
CurDate.Minute;
CurDate.Millisecond
【讨论】:
我认为这段代码会解决你的问题
DateTime.Now.ToString("HH:mm")
【讨论】:
ToString 方法已经被其他几个解决方案所覆盖。此外,这也不会捕获秒或 AM/PM 时间。
计算当前日期时间:
DateTime theDate = DateTime.UtcNow;
string custom = theDate.ToString("d");
MessageBox.Show(custom);
【讨论】:
我也在尝试这个,发现这些页面也很有帮助。 首先是主课... https://msdn.microsoft.com/en-us/library/system.datetime(v=vs.110).aspx
现在 ToString 方法的一些说明符格式... https://msdn.microsoft.com/en-us/library/system.globalization.datetimeformatinfo(v=vs.110).aspx
例子:
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 小时时间,如“从午夜开始的时间”所述
你可以使用我的geter方法(); :-D
【讨论】:
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}等...
【讨论】:
这只会以 24 小时格式显示当前时间:
class Program
{
static void Main(string[] args)
{
Console.WriteLine(DateTime.Now.ToLongTimeString().ToString());
Console.WriteLine(DateTime.Now.ToShortTimeString().ToString());
Console.ReadLine();
}
}
问候
克
【讨论】:
很简单DateTime.Now.ToString("hh:mm:ss tt")
【讨论】:
使用下面的代码
DateTime.Now.ToString("h:mm:ss tt")
【讨论】:
在我的例子中,我使用下面的代码从 DateTime 单独获取时间。
var currentDateTime = DateTime.Now;
var currentTimeAlone = new TimeSpan(currentDateTime.Hour, currentDateTime.Minute, currentDateTime.Second);
Console.WriteLine(currentTimeAlone);
希望它对某人有所帮助。 :)
【讨论】:
试试这个。它在 3tier Architecture Web Application 中为我工作。
"'" + 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 在行尾插入。
【讨论】: