本帖最后由 群发软件 于 2017-5-22 23:03 编辑 
 组合一个日期/时间值
  在VB.NET中可以用几种方法组合一个日期/时间值。列表A说明了几种实现相同功能的方法。
  ◆第一个消息框将显示:dtDate1: 1/2/2007 12:00:00 A.M.
  ◆第二个消息框将显示:dtDate2: 1/2/2007 12:00:00 A.M.
  ◆第三个消息框将显示:dtDate3: 2/3/2007 3:01:59 A.M.
  ◆第四个消息框将显示:dtDate4: 2/3/2007 3:01:59 P.M.
  实例说明
  要设定变量dtDate1的值,我利用#符号设定日期为1/2/2007。由于没有指定时间,系统会默认将时间分配为12:00:00 A.M.。(如果你指定#1/2/2007 3:59:00 PM#,则指定的时间为3:59:00 P.M。)
  要设定变量dtDate2的值,我利用Date对象,把它提交给和dtDate1相同的日期值。其结果相同;dtDate1显示的日期和dtDate2的日期完全一样。由于我省略了时间,系统默认设定时间为12:00:00 A.M.。
  要设定变量dtDate3的值,我提供包括时间在内的完整信息。注意,我使用军用时间,将其设为3:00:00 A.M。
  要设定变量dtDate4的值,我使用和dtDate3相同的日期和时间,但它的时间设为15:00:00,得到3:00:00 P.M。
Private Sub DateTimeCombination() Dim dtDate1 As Date = #1/2/2007#  Dim dtDate2 As New Date(2007, 1, 2)  Dim dtDate3 As New Date(2007, 2, 3, 3, 1, 59)  Dim dtDate4 As New Date(2007, 2, 3, 15, 1, 59) 
MsgBox("dtDate1: " & dtDate1.ToString())  MsgBox("dtDate2: " & dtDate2.ToString())  MsgBox("dtDate3: " & dtDate3.ToString())  MsgBox("dtDate4: " & dtDate4.ToString()) End Sub  | 
<一> 获取/设置目前日期时间函数
 (1)Now ():返回系统目前的日期和时间。如:2007-3-29 早上10:38:22
 (2)Today ():返回或设置系统目前的日期。
 (3)TimeOfDay ():返回或设置系统目前的时间。
 (4)DataString ():以“yyy-mm-dd”格式返回或设置系统目前时间。
 (5)Timer ():以Double类型返回自午夜到今所经过的秒数和毫秒数,秒数是返回值的整数部分,毫秒数则是小数部分。
<二> 返回日期时间函数
 (1)合并年月日成日期函数 DateSerial ()
     格式:DateSerial (year As Integer , month As Integer , day As Integer ) As DateTime
     说明:将参数所指定的年月日合并成日期返回,参数year的值须是介于1~9999的整数,若是介于0~99的整数,将被解释为1930~2029,若是小于1的整数,将自目前年底中减去;参数day的值须是介于1~31的整数,若是小于1的整数,将自目前日期中减去。例如:DateSerial (99,10,22) 会返回#1999-10-22#;DateSerial (99,10,22-23)会返回#1999-9-29”;DateSerial (99,10,22+3)会返回#1999-10-25#。
 (2)将字符串转换成日期函数 DateValue ()
     格式:DateValue (str As String) As Date Time
     说明:将参数转换成日期返回。参数str是表示由1年1月00:00:00到9999年12月31日23:59:59之间日期/时间值的字符串表达式。例如:DateValue (“Februay , 12 , 1972”)会返回#1972-2-12#。
 (3)合并时分秒成时间函数TimeSerial ()
     格式:TimeSerial Chour As Integer , minute As Integer , Second As Integer ) As DateTime
     说明:将参数所指定的时分秒合并成时间返回。参数hour的值必须是介于0~23的整数,若是小于1的整数,将自目前小时数中减去;参数minute和参数second的值须是介于0~59的整数,若是小于1的整数,将分别自目前分钟数与秒数中减去,例如:TimeSerial (12-6,-15,0)会返回上午06:45:00
如何把字符串转为日期型呢? 
例如:“20120814”如何转为日期型。 
关键:先将字符串形成日期型的“形式” 
比如“20120814”     形成:  “2012-08-14”    或"2012/08/14" 
故:举例如下:
Dim  a  As   Date   
Dim  s  As   String  =  "20080814"   
a =  CDate (Format( CInt (s),  "0000-00-00" ))  
MsgBox(a.Year)  
===========================
vb.net 日期时间格式转换(Format函数) 
VB.net 中 取系统时间 
Dim datestr As String = "" 
datestr = Format(Now(), "yyyy/MM/dd H:mm:ss ffff") 
用户定义的日期/时间格式(Format 函数) 
下表显示可用于创建用户定义的日期/时间格式的字符。与 Visual Basic 的早期版本不同,这些格式字符区分大小写。 
字符  | 说明  | 
 | 时间分隔符。在某些区域设置中,可以使用其他字符表示时间分隔符。时间分隔符在格式化时间值时分隔小时、分钟和秒。格式化输出中用作时间分隔符的实际字符由系统的  LocaleID  值确定。  | 
 | 日期分隔符。在某些区域设置中,可以使用其他字符表示日期分隔符。日期分隔符在格式化日期值时分隔日、月和年。格式化输出中用作日期分隔符的实际字符由您的区域设置确定。  | 
 | 用于表明不论尾随什么字母,随后字符都应该以单字母格式读取。也用于表明单字母格式应以用户定义格式读取。有关更多详细信息,请参见下面的内容。  | 
 | 将日显示为不带前导零的数字(如  )。如果这是用户定义的数字格式中的唯一字符,请使用  %d 。  | 
 |  | 
 |  | 
 |  | 
 | 将月份显示为不带前导零的数字(如一月表示为  )。如果这是用户定义的数字格式中的唯一字符,请使用  %M 。  | 
 |  | 
 |  | 
 | 将月份显示为完整月份名(例如  January )。  | 
 |  | 
 | 使用 12 小时制将小时显示为不带前导零的数字(例如  1:15:15 PM )。如果这是用户定义的数字格式中的唯一字符,请使用  %h 。  | 
 | 使用 12 小时制将小时显示为带前导零的数字(例如  01:15:15 PM )。  | 
 | 使用 24 小时制将小时显示为不带前导零的数字(例如  1:15:15 )。如果这是用户定义的数字格式中的唯一字符,请使用  %H 。  | 
 | 使用 24 小时制将小时显示为带前导零的数字(例如  01:15:15 )。  | 
 | 将分钟显示为不带前导零的数字(例如  12:1:15 )。如果这是用户定义的数字格式中的唯一字符,请使用  %m 。  | 
 | 将分钟显示为带前导零的数字(例如  12:01:15 )。  | 
 | 将秒显示为不带前导零的数字(例如  12:15:5 )。如果这是用户定义的数字格式中的唯一字符,请使用  %s 。  | 
 | 将秒显示为带前导零的数字(例如  12:15:05 )。  | 
 | 显示秒的小数部分。例如, ff  将精确显示到百分之一秒,而  ffff  将精确显示到万分之一秒。用户定义格式中最多可使用七个  f  符号。如果这是用户定义的数字格式中的唯一字符,请使用  %f 。  | 
 | 使用 12 小时制,并对中午之前的任一小时显示大写的  A ,对中午到 11:59 P.M 之间的任一小时显示大写的  P 。如果这是用户定义的数字格式中的唯一字符,请使用  %t。  | 
 | 对于使用 12 小时制的区域设置,对中午之前任一小时显示大写的  AM ,对中午到 11:59 P.M 之间的任一小时显示大写的  PM 。 对于使用 24 小时制的区域设置,不显示任何字符。  | 
 | 将年份 (0-9) 显示为不带前导零的数字。如果这是用户定义的数字格式中的唯一字符,请使用  %y 。  | 
 |  | 
 |  | 
 |  | 
 | 显示不带前导零的时区偏移量(如  -8 )。如果这是用户定义的数字格式中的唯一字符,请使用 %z 。  | 
 |  | 
 |  | 
示例下列示例用于说明  December 7, 1958, 8:50 PM, 35 seconds  的用户定义的日期和时间格式:
格式  | 显示  | 
M/d/yy  |  | 
| d-MMM | 7-Dec  | 
d-MMMM-yy  | 7-December-58  | 
d MMMM  | 7 December  | 
MMMM yy  | December 58  | 
hh:mm tt  | 08:50 PM  | 
h:mm:ss t  | 8:50:35 P  | 
H:mm  | 20:50  | 
H:mm:ss  | 20:50:35  | 
M/d/yyyy H:mm  | 12/7/1958 20:50  | 
===================================================================================
VB.Net日期(时间)格式化的5种使用方法 
以下时间以2009年9月26号为例 
第1种格式  : dd/MM/yyyy     
String.Format("{0:dd/MM/yyyy}", DateTime.Now) 
O/P = 26/09/2009 
第2种格式: MM/dd/yyyy 
String.Format("{0:MM/dd/yyyy}", DateTime.Now) 
O/P = 09/26/2009 
第3种格式 : dd/MM/yy 
String.Format("{0:dd/MM/yy}", DateTime.Now) 
O/P = 26/09/09 
第4种格式: t    '更多.net源码和教程,来自[乐 博 网 
www.lob.cn] 
String.Format("{0:t}", DateTime.Now) 
O/P = 12:22 PM 
第5种格式: F 
String.Format("{0:F}", DateTime.Now)