项目中有使用到DateTime,但是从网上找到的例子运行后发现与打印出的log不一致,因此花了些时间,以网上旧的数据为模板重新把DateTime相关的内容在打印了一遍,并附MSDN中的资料。
DateTime dt = DateTime.Now;
dt.ToString();//7/28/2014 3:09:04 PM
dt.ToFileTime().ToString();//130510049447914026
dt.ToFileTimeUtc().ToString();//130510337447914026
dt.ToLocalTime().ToString();//7/28/2014 3:09:04 PM
dt.ToLongDateString().ToString();//Monday, July 28, 2014
dt.ToLongTimeString().ToString();//3:09:04 PM
dt.ToOADate().ToString();//41848.631305456
dt.ToShortDateString().ToString();//7/28/2014
dt.ToShortTimeString().ToString();//3:09 PM
dt.ToUniversalTime().ToString();//7/28/2014 7:09:04 AM
dt.Year.ToString();//2014
dt.Date.ToString();//7/28/2014 12:00:00 AM
dt.DayOfWeek.ToString();//Monday
dt.DayOfYear.ToString();//209
dt.Hour.ToString();//15
dt.Millisecond.ToString();//791
dt.Minute.ToString();//9
dt.Month.ToString();//7
dt.Second.ToString();//4
dt.Ticks.ToString();//635421569447914026
dt.TimeOfDay.ToString();//15:09:04.7914026
dt.AddYears(1).ToString();//7/28/2015 3:09:04 PM
dt.AddDays(1.1).ToString();//7/29/2014 5:33:04 PM
dt.AddHours(1.1).ToString();//7/28/2014 4:15:04 PM
dt.AddMilliseconds(1.1).ToString();//7/28/2014 3:09:04 PM
dt.AddMonths(1).ToString();//8/28/2014 3:09:04 PM
dt.AddSeconds(1.1).ToString();//7/28/2014 3:09:05 PM
dt.AddMinutes(1.1).ToString();//7/28/2014 3:10:10 PM
dt.AddTicks(1000).ToString();//7/28/2014 3:09:04 PM
dt.CompareTo(dt).ToString();//0
dt.Add(new TimeSpan(2, 0, 0, 0)).ToString();//7/30/2014 3:09:04 PM,2天后
dt.Equals(dt).ToString();//True
dt.GetHashCode().ToString();//26241578
dt.GetType().ToString();//System.DateTime
dt.GetTypeCode().ToString();//DateTime
dt.GetDateTimeFormats('s')[0].ToString();//2014-07-28T15:09:04
dt.GetDateTimeFormats('t')[0].ToString();//3:09 PM
dt.GetDateTimeFormats('T')[0].ToString();//3:09:04 PM
dt.GetDateTimeFormats('y')[0].ToString();//July, 2014
dt.GetDateTimeFormats('Y')[0].ToString();//July, 2014
dt.GetDateTimeFormats('U')[0].ToString();//Monday, July 28, 2014 7:09:04 AM
dt.GetDateTimeFormats('u')[1].ToString();//2014-07-28 15:09:04Z
dt.GetDateTimeFormats('d')[0].ToString();//7/28/2014
dt.GetDateTimeFormats('D')[0].ToString();//Monday, July 28, 2014, ‘D’目前无数组,网上写的('D')[1]、('D')[2]会报数组越界
dt.GetDateTimeFormats('M')[0].ToString();//July 28
dt.GetDateTimeFormats('m')[0].ToString();//July 28
dt.GetDateTimeFormats('f')[0].ToString();//Monday, July 28, 2014 3:09 PM
dt.GetDateTimeFormats('F')[0].ToString();//Monday, July 28, 2014 3:09:04 PM
dt.GetDateTimeFormats('g')[0].ToString();//7/28/2014 3:09 PM
dt.GetDateTimeFormats('G')[0].ToString();//7/28/2014 3:09:04 PM
dt.GetDateTimeFormats('r')[0].ToString();//Mon, 28 Jul 2014 15:09:04 GMT
dt.GetDateTimeFormats('R')[0].ToString();//Mon, 28 Jul 2014 15:09:04 GMT
string.Format("{0:d}",dt);//7/28/2014
string.Format("{0:D}",dt);//Monday, July 28, 2014
string.Format("{0:f}",dt);//Monday, July 28, 2014 3:09 PM
string.Format("{0:F}",dt);//Monday, July 28, 2014 3:09:04 PM
string.Format("{0:g}",dt);//7/28/2014 3:09 PM
string.Format("{0:G}",dt);//7/28/2014 3:09:04 PM
string.Format("{0:m}",dt);//July 28
string.Format("{0:M}",dt);//July 28
string.Format("{0:r}",dt);//Mon, 28 Jul 2014 15:09:04 GMT
string.Format("{0:R}",dt);//Mon, 28 Jul 2014 15:09:04 GMT
string.Format("{0:s}",dt);//2014-07-28T15:09:04
string.Format("{0:t}",dt);//3:09 PM
string.Format("{0:T}",dt);//3:09:04 PM
string.Format("{0:u}",dt);//2014-07-28 15:09:04Z
string.Format("{0:U}",dt);//Monday, July 28, 2014 7:09:04 AM
string.Format("{0:y}",dt);//July, 2014
string.Format("{0:Y}",dt);//July, 2014
string.Format("{0}",dt);//7/28/2014 3:09:04 PM
string.Format("{0:yyyyMMddHHmmssffff}",dt);//201407281509047914
dt.toString("yyyy-MM-dd:hh-mm-ss");//2014-07-28:04-30-09
dt.toString("yyyy-MM-dd:HH-mm-ss");//2014-07-28:16-30-09
DateTime属性:
名称 | 说明 | |
---|---|---|
Date | 获取此实例的日期部分。 | |
Day | 获取此实例所表示的日期为该月中的第几天。 | |
DayOfWeek | 获取此实例所表示的日期是星期几。 | |
DayOfYear | 获取此实例所表示的日期是该年中的第几天。 | |
Hour | 获取此实例所表示日期的小时部分。 | |
Kind | 获取一个值,该值指示由此实例表示的时间是基于本地时间、协调世界时 (UTC),还是两者皆否。 | |
Millisecond | 获取此实例所表示日期的毫秒部分。 | |
Minute | 获取此实例所表示日期的分钟部分。 | |
Month | 获取此实例所表示日期的月份部分。 | |
Now | 获取一个 DateTime 对象,该对象设置为此计算机上的当前日期和时间,表示为本地时间。 | |
Second | 获取此实例所表示日期的秒部分。 | |
Ticks | 获取表示此实例的日期和时间的计时周期数。 | |
TimeOfDay | 获取此实例的当天的时间。 | |
Today | 获取当前日期。 | |
UtcNow | 获取一个 DateTime 对象,该对象设置为此计算机上的当前日期和时间,表示为协调通用时间 (UTC)。 | |
Year | 获取此实例所表示日期的年份部分。 |
DateTime方法:
名称 | 说明 | |
---|---|---|
Add | 返回一个新的 DateTime,它将指定 TimeSpan 的值加到此实例的值上。 | |
AddDays | 返回一个新的 DateTime,它将指定的天数加到此实例的值上。 | |
AddHours | 返回一个新的 DateTime,它将指定的小时数加到此实例的值上。 | |
AddMilliseconds | 返回一个新的 DateTime,它将指定的毫秒数加到此实例的值上。 | |
AddMinutes | 返回一个新的 DateTime,它将指定的分钟数加到此实例的值上。 | |
AddMonths | 返回一个新的 DateTime,它将指定的月数加到此实例的值上。 | |
AddSeconds | 返回一个新的 DateTime,它将指定的秒数加到此实例的值上。 | |
AddTicks | 返回一个新的 DateTime,它将指定的计时周期数加到此实例的值上。 | |
AddYears | 返回一个新的 DateTime,它将指定的年份数加到此实例的值上。 | |
Compare | 对两个 DateTime 的实例进行比较,并返回一个指示第一个实例是早于、等于还是晚于第二个实例的整数。 | |
CompareTo(DateTime) | 将此实例的值与指定的 DateTime 值相比较,并返回一个整数,该整数指示此实例是早于、等于还是晚于指定的DateTime 值。 | |
CompareTo(Object) | 将此实例的值与包含指定的 DateTime 值的指定对象相比较,并返回一个整数,该整数指示此实例是早于、等于还是晚于指定的 DateTime 值。 | |
DaysInMonth | 返回指定年和月中的天数。 | |
Equals(DateTime) | 返回一个值,该值指示此实例的值是否等于指定 DateTime 实例的值。 | |
Equals(Object) | 返回一个值,该值指示此实例是否等于指定的对象。 (重写 ValueType.Equals(Object)。) | |
Equals(DateTime, DateTime) | 返回一个值,该值指示两个 DateTime 实例是否具有同一个日期和时间值。 | |
FromBinary | 反序列化一个 64 位二进制值,并重新创建序列化的 DateTime 初始对象。 | |
FromFileTime | 将指定的 Windows 文件时间转换为等效的本地时间。 | |
FromFileTimeUtc | 将指定的 Windows 文件时间转换为等效的 UTC 时间。 | |
FromOADate | 返回与指定的 OLE 自动化日期等效的 DateTime。 | |
GetDateTimeFormats() | 将此实例的值转换为标准日期和时间格式说明符支持的所有字符串表示形式。 | |
GetDateTimeFormats(Char) | 将此实例的值转换为指定的标准日期和时间格式说明符支持的所有字符串表示形式。 | |
GetDateTimeFormats(IFormatProvider) | 将此实例的值转换为标准日期和时间格式说明符和指定的区域性特定格式信息支持的所有字符串表示形式。 | |
GetDateTimeFormats(Char, IFormatProvider) | 将此实例的值转换为指定的标准日期和时间格式说明符和区域性特定格式信息支持的所有字符串表示形式。 | |
GetHashCode | 返回此实例的哈希代码。 (重写 ValueType.GetHashCode()。) | |
GetType | 获取当前实例的 Type。 (继承自 Object。) | |
GetTypeCode | 返回值类型 DateTime 的 TypeCode。 | |
IsDaylightSavingTime | 指示此 DateTime 实例是否在当前时区的夏时制范围内。 | |
IsLeapYear | 返回指定的年份是否为闰年的指示。 | |
Parse(String) | 将日期和时间的字符串表示形式转换为其等效的 DateTime。 | |
Parse(String, IFormatProvider) | 使用区域性特定格式信息,将日期和时间的字符串表示形式转换为其等效的 DateTime。 | |
Parse(String, IFormatProvider, DateTimeStyles) | 使用区域性特定格式信息和格式设置样式将日期和时间的字符串表示形式转换为其等效的 DateTime。 | |
ParseExact(String, String, IFormatProvider) | 使用指定的格式和区域性特定格式信息,将日期和时间的指定字符串表示形式转换为其等效的 DateTime。 字符串表示形式的格式必须与指定的格式完全匹配。 | |
ParseExact(String, String, IFormatProvider, DateTimeStyles) | 使用指定的格式、区域性特定的格式信息和样式将日期和时间的指定字符串表示形式转换为其等效的 DateTime。字符串表示形式的格式必须与指定的格式完全匹配,否则会引发异常。 | |
ParseExact(String, String[], IFormatProvider, DateTimeStyles) | 使用指定的格式数组、区域性特定格式信息和样式,将日期和时间的指定字符串表示形式转换为其等效的DateTime。 字符串表示形式的格式必须至少与指定的格式之一完全匹配,否则会引发异常。 | |
SpecifyKind | 创建新的 DateTime 对象,该对象具有与指定的 DateTime 相同的刻度数,但是根据指定的 DateTimeKind 值的指示,指定为本地时间或协调世界时 (UTC),或者两者皆否。 | |
Subtract(DateTime) | 从此实例中减去指定的日期和时间。 | |
Subtract(TimeSpan) | 从此实例中减去指定持续时间。 | |
ToBinary | 将当前 DateTime 对象序列化为一个 64 位二进制值,该值随后可用于重新创建 DateTime 对象。 | |
ToFileTime | 将当前 DateTime 对象的值转换为 Windows 文件时间。 | |
ToFileTimeUtc | 将当前 DateTime 对象的值转换为 Windows 文件时间。 | |
ToLocalTime | 将当前 DateTime 对象的值转换为本地时间。 | |
ToLongDateString | 将当前 DateTime 对象的值转换为其等效的长日期字符串表示形式。 | |
ToLongTimeString | 将当前 DateTime 对象的值转换为其等效的长时间字符串表示形式。 | |
ToOADate | 将此实例的值转换为等效的 OLE 自动化日期。 | |
ToShortDateString | 将当前 DateTime 对象的值转换为其等效的短日期字符串表示形式。 | |
ToShortTimeString | 将当前 DateTime 对象的值转换为其等效的短时间字符串表示形式。 | |
ToString() | 将当前 DateTime 对象的值转换为其等效的字符串表示形式。 (重写 ValueType.ToString()。) | |
ToString(IFormatProvider) | 使用指定的区域性特定格式信息将当前 DateTime 对象的值转换为它的等效字符串表示形式。 | |
ToString(String) | 使用指定的格式将当前 DateTime 对象的值转换为它的等效字符串表示形式。 | |
ToString(String, IFormatProvider) | 使用指定的格式和区域性特定格式信息将当前 DateTime 对象的值转换为它的等效字符串表示形式。 | |
ToUniversalTime | 将当前 DateTime 对象的值转换为协调世界时 (UTC)。 | |
TryParse(String, DateTime) | 将日期和时间的指定字符串表示形式转换为其 DateTime 等效项,并返回一个指示转换是否成功的值。 | |
TryParse(String, IFormatProvider, DateTimeStyles, DateTime) | 使用指定的区域性特定格式信息和格式设置样式,将日期和时间的指定字符串表示形式转换为其 DateTime 等效项,并返回一个指示转换是否成功的值。 | |
TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime) | 使用指定的格式、区域性特定的格式信息和样式将日期和时间的指定字符串表示形式转换为其等效的 DateTime。字符串表示形式的格式必须与指定的格式完全匹配。 该方法返回一个指示转换是否成功的值。 | |
TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime) | 使用指定的格式数组、区域性特定格式信息和样式,将日期和时间的指定字符串表示形式转换为其等效的DateTime。 字符串表示形式的格式必须至少与指定的格式之一完全匹配。 该方法返回一个指示转换是否成功的值。 |
标准日期和时间格式字符串:
格式说明符 | 说明 | 示例 |
---|---|---|
"d" | 短日期模式。 有关详细信息,请参阅短日期(“d”)格式说明符。 | 6/15/2009 1:45:30 PM -> 6/15/2009 (en-US) 6/15/2009 1:45:30 PM -> 15/06/2009 (fr-FR) 6/15/2009 1:45:30 PM -> 2009/06/15 (ja-JP) |
“D” | 长日期模式。 有关详细信息,请参阅长日期(“D”)格式说明符。 | 6/15/2009 1:45:30 PM -> Monday, June 15, 2009 (en-US) 6/15/2009 1:45:30 PM -> 15 июня 2009 г.(ru-RU) 6/15/2009 1:45:30 PM -> Montag, 15. Juni 2009 (de-DE) |
“f” | 完整日期/时间模式(短时间)。 有关详细信息,请参阅完整日期短时间(“f”)格式说明符。 | 6/15/2009 1:45:30 PM -> Monday, June 15, 2009 1:45 PM (en-US) 6/15/2009 1:45:30 PM -> den 15 juni 2009 13:45 (sv-SE) 6/15/2009 1:45:30 PM -> Δευτέρα, 15 Ιουνίου 2009 1:45 μμ (el-GR) |
“F” | 完整日期/时间模式(长时间)。 有关详细信息,请参阅完整日期长时间(“F”)格式说明符。 | 6/15/2009 1:45:30 PM -> Monday, June 15, 2009 1:45:30 PM (en-US) 6/15/2009 1:45:30 PM -> den 15 juni 2009 13:45:30 (sv-SE) 6/15/2009 1:45:30 PM -> Δευτέρα, 15 Ιουνίου 2009 1:45:30 μμ (el-GR) |
“g” | 常规日期/时间模式(短时间)。 有关详细信息,请参阅常规日期短时间(“g”)格式说明符。 | 6/15/2009 1:45:30 PM -> 6/15/2009 1:45 PM (en-US) 6/15/2009 1:45:30 PM -> 15/06/2009 13:45 (es-ES) 6/15/2009 1:45:30 PM -> 2009/6/15 13:45 (zh-CN) |
“G” | 常规日期/时间模式(长时间)。 有关详细信息,请参阅常规日期长时间(“G”)格式说明符。 | 6/15/2009 1:45:30 PM -> 6/15/2009 1:45:30 PM (en-US) 6/15/2009 1:45:30 PM -> 15/06/2009 13:45:30 (es-ES) 6/15/2009 1:45:30 PM -> 2009/6/15 13:45:30 (zh-CN) |
“M”、“m” | 月/日模式。 有关详细信息,请参阅月(“M”、“m”)格式说明符。 | 6/15/2009 1:45:30 PM -> June 15 (en-US) 6/15/2009 1:45:30 PM -> 15. juni (da-DK) 6/15/2009 1:45:30 PM -> 15 Juni (id-ID) |
“O”、“o” | 往返日期/时间模式。 有关详细信息,请参阅往返(“O”、“o”)格式说明符。 | 6/15/2009 1:45:30 PM -> 2009-06-15T13:45:30.0900000 |
“R”、“r” | RFC1123 模式。 有关详细信息,请参阅 RFC1123(“R”、“r”)格式说明符。 | 6/15/2009 1:45:30 PM -> Mon, 15 Jun 2009 20:45:30 GMT |
“s” | 可排序日期/时间模式。 有关详细信息,请参阅可排序(“s”)格式说明符。 | 6/15/2009 1:45:30 PM -> 2009-06-15T13:45:30 |
“t” | 短时间模式。 有关详细信息,请参阅短时间(“t”)格式说明符。 | 6/15/2009 1:45:30 PM -> 1:45 PM (en-US) 6/15/2009 1:45:30 PM -> 13:45 (hr-HR) 6/15/2009 1:45:30 PM -> 01:45 م (ar-EG) |
“T” | 长时间模式。 有关详细信息,请参阅长时间(“T”)格式说明符。 | 6/15/2009 1:45:30 PM -> 1:45:30 PM (en-US) 6/15/2009 1:45:30 PM -> 13:45:30 (hr-HR) 6/15/2009 1:45:30 PM -> 01:45:30 م (ar-EG) |
“u” | 通用可排序日期/时间模式。 有关详细信息,请参阅通用可排序(“U”)格式说明符。 | 6/15/2009 1:45:30 PM -> 2009-06-15 20:45:30Z |
“U” | 通用完整日期/时间模式。 有关详细信息,请参阅通用完整(“U”)格式说明符。 | 6/15/2009 1:45:30 PM -> Monday, June 15, 2009 8:45:30 PM (en-US) 6/15/2009 1:45:30 PM -> den 15 juni 2009 20:45:30 (sv-SE) 6/15/2009 1:45:30 PM -> Δευτέρα, 15 Ιουνίου 2009 8:45:30 μμ (el-GR) |
“Y”、“y” | 年月模式。 有关详细信息,请参阅年月(“Y”)格式说明符。 | 6/15/2009 1:45:30 PM -> June, 2009 (en-US) 6/15/2009 1:45:30 PM -> juni 2009 (da-DK) 6/15/2009 1:45:30 PM -> Juni 2009 (id-ID) |
任何其他单个字符 | 未知说明符。 | 引发运行时 FormatException。 |