假设我有1400,我想将其转换为下午2点。
我尝试了以下方法:
Dim convertedTime As String = DateTime.ParseExact(theTime,"HHmm", Nothing)
并且它会给我这个:
2012年6月12日 下午02:00:00
我不想要日期部分,也不需要秒数。我只需要下午2点。
我该怎么做呢?谢谢!
假设我有1400,我想将其转换为下午2点。
我尝试了以下方法:
Dim convertedTime As String = DateTime.ParseExact(theTime,"HHmm", Nothing)
并且它会给我这个:
2012年6月12日 下午02:00:00
我不想要日期部分,也不需要秒数。我只需要下午2点。
我该怎么做呢?谢谢!
ParseExact
方法返回的是一个DateTime
值,而不是字符串。如果您将其分配给字符串变量,则会自动进行转换,使用标准格式。Dim d As DateTime = DateTime.ParseExact(theTime,"HHmm", Nothing);
Dim convertedTime As String = d.ToString("hh:mm tt")
Label1.Text = Format(Now, "hh:mm")
: Label1的文本= 10:26(或者当前时间)
Label1.Text = Format(Now, "hh:mm tt")
: Label1的文本= 10:26 PM(或者当前时间的下午时间)
Label1.Text = Format(Now, "dddd dd, MMMM, YYYY")
: Label1的文本= Thursday 21, August, 2014(或者当前日期)
Label1.Text = Now.ToShortTimeString.ToString() (10:26 PM)
Label1.Text = Now.ToLongTimeString.ToString() (10:26:30 PM)
Dim theTime = New Date(2012, 6, 12, 14, 0, 0)
Dim formatted = theTime.ToString("h:mm tt", Globalization.CultureInfo.InvariantCulture)
有两种方法可以实现这个目标。
选项1(使用标准日期和时间格式字符串):
Dim theTime As DateTime = new DateTime(2008, 4, 10, 6, 30, 0)
Dim convertedTime As String =
theTime.ToString("t", CultureInfo.CreateSpecificCulture("en-us"))
选项2(使用自定义日期和时间格式字符串):
Dim theTime As DateTime = new DateTime(2008, 4, 10, 6, 30, 0)
Dim convertedTime As String = theTime.ToString("hh:mm tt")
convertedTime
均为 上午6:30
。en-us
文化,可以使用CultureInfo.InvariantCulture
。 - Tim Schmeltert
在使用CultureInfo.InvariantCulture时不会返回AM/PM。请参见 https://compilify.net/1u5 - Dennis Traub您可以使用String.Format()
函数而无需使用ParseExtract()
函数
VB.NET:-
Dim time As String = String.Format("{0:hh}:{0:mm} {0:tt}", Date.Now) '12:00 PM'
Dim time_1 As String = String.Format("{0:hh}:{0:mm}:{0:ss} {0:tt}", Date.Now) '12:00:25 PM'
Dim time_2 As String = String.Format("{0:mm}:{0:ss}.{0:fff}", Date.Now) '00:25.986 - Mostly Used In Stopwatches'
CSharp (C#):
String time = String.Format("{0:hh}:{0:mm} {0:tt}", DateTime.Now); // 12:00 PM
String time_1 = String.Format("{0:hh}:{0:mm}:{0:ss} {0:tt}", DateTime.Now); // 12:00:25 PM
String time_2 = String.Format("{0:mm}:{0:ss}.{0:fff}", DateTime.Now); // 00:25.986 - Mostly Used In Stopwatches
以上代码仅为示例,您可以使用上述代码进行实验/观察/制作应用程序
String.Format()
函数不会删除任何内容,而是使用添加的格式将任何内容转换为字符串。 - stackoverflowuser试试这个...
Dim TimeNow As String
TimeNow = TimeOfDay.ToString("h:mm:ss tt")
stackoverflowuser:
You Can Use String.Format() Function Without ParseExtract() Function
VB.NET:-
Dim time As String = String.Format("{0:hh}:{0:mm} {0:tt}", Date.Now) '12:00 PM'
Dim time_1 As String = String.Format("{0:hh}:{0:mm}:{0:ss} {0:tt}", Date.Now) '12:00:25 PM'
Dim time_2 As String = String.Format("{0:mm}:{0:ss}.{0:fff}", Date.Now) '00:25.986 - Mostly Used In Stopwatches'
CSharp (C#):-
String time = String.Format("{0:hh}:{0:mm} {0:tt}", DateTime.Now); // 12:00 PM
String time_1 = String.Format("{0:hh}:{0:mm}:{0:ss} {0:tt}", DateTime.Now); // 12:00:25 PM
String time_2 = String.Format("{0:mm}:{0:ss}.{0:fff}", DateTime.Now); // 00:25.986 - Mostly Used In Stopwatches
Above Codes Are Examples, You Can Use Above Codes To Experiment/Observe/Make Applications With It
你也可以在以下地方使用:
VB.NET:-
Label1.Text = String.Format("{0:hh}:{0:mm} {0:tt}", Date.Now) 'Display: 12:00 PM'
C#(CSharp):
label1.Text = SString.Format("{0:hh}:{0:mm} {0:tt}", DateTime.Now); // Display: 12:00 PM
您将在VB.NET和C#中获得任何标签的格式化时间