时间格式转换
将时间转换为am pm
DateTime dt = DateTime.Now; string aa = string.Format("{0:yyyy-mm-dd hh:mm:ss tt }", dt); string cc = aa.Replace("上午", "am").Replace("下午", "pm"); Response.Write(cc);
将带AM、PM的字符串转为正常模式
例把时间: 02-28-12 03:07PM 转成 2012/2/28 15:07:00
System.Globalization.DateTimeFormatInfo dtfi= new System.Globalization.CultureInfo("en-US", false).DateTimeFormat;
dtfi.ShortTimePattern = "t";
DateTime dt= DateTime.Parse("02-28-12 03:07PM ", dtfi);
Console.WriteLine(dt.ToString());
输出:2012/2/28 15:07:00
参考:
日期转化
为了达到不同的显示效果有时,我们需要对时间进行转化,默认格式为:2007-01-03 14:33:34 ,要转化为其他格式,要用到DateTime.ToString的方法(String, IFormatProvider),如下所示:
using System;
using System.Globalization;
String format="D";
DateTime date=DataTime,Now;
Response.Write(date.ToString(format, DateTimeFormatInfo.InvariantInfo));
结果输出
Thursday, June 16, 2005
参数format格式详细用法:
格式字符 关联属性/说明
d ShortDatePattern
D LongDatePattern
f 完整日期和时间(长日期和短时间)
F FullDateTimePattern(长日期和长时间)
g 常规(短日期和短时间)
G 常规(短日期和长时间)
m、M MonthDayPattern
r、R RFC1123Pattern
s 使用当地时间的 SortableDateTimePattern(基于 ISO 8601)
t ShortTimePattern
T LongTimePattern
u UniversalSortableDateTimePattern 用于显示通用时间的格式
U 使用通用时间的完整日期和时间(长日期和长时间)
y、Y YearMonthPattern
C#比较两时间大小
string st1="12:13";
string st2="14:14";
DateTime dt1=Convert.ToDateTime(st1);
DateTime dt2=Convert.ToDateTime(st2);
DateTime dt3=DateTime.Now;
if(DateTime.Compare(dt1,dt2)>0)
msg.Text=st1+">"+st2;
else
msg.Text=st1+"<"+st2;
msg.Text+="\r\n"+dt1.ToString();
if(DateTime.Compare(dt1,dt3)>0)
msg.Text+="\r\n"+st1+">"+dt3.ToString();
else
msg.Text+="\r\n"+st1+"<"+dt3.ToString();