Difference between revisions of "ZH/Documentation/BASIC Guide/Date and Time (Runtime Library)"

From Apache OpenOffice Wiki
Jump to: navigation, search
 
Line 100: Line 100:
 
</source>
 
</source>
  
{{Documentation/Note|Sunday 被视为每个星期的第一天。}}
+
{{Note|Sunday 被视为每个星期的第一天。}}
  
 
== 检索系统日期和时间 ==
 
== 检索系统日期和时间 ==

Latest revision as of 13:57, 6 July 2018

doc OOo
Book.png

Apache OpenOffice Basic 提供了 Date 数据类型,该类型以二进制格式保存日期和时间详细信息。

程序代码中的日期和时间详细信息规范

可以通过简单字符串赋值将日期赋给日期变量:

Dim MyDate As Date
MyDate = "24.1.2002"

此赋值可以正常工作,因为 Apache OpenOffice Basic 自动将定义为字符串的日期值转换为日期变量。不过,这种类型的赋值会导致出现错误,因为不同国家/地区以不同方式定义和显示日期和时间值。

由于 Apache OpenOffice Basic 在将字符串转换为日期值时使用特定于国家/地区的操作系统设置,因此,只有在特定于国家/地区的设置与字符串表达式匹配时,上述表达式才能正常工作。

要避免出现此问题,应使用 DateSerial 函数将固定值赋给日期变量:

Dim MyVar As Date
MyDate = DateSerial (2001, 1, 24)

函数参数的顺序必须为:年、月、日。该函数确保实际将正确的值赋给变量,而与特定于国家/地区的设置无关。

TimeSerial 函数设置时间详细信息格式的方式与 DateSerial 函数设置日期格式的方式相同:

Dim MyVar As Date
MyDate =  TimeSerial(11, 23, 45)

应按以下顺序指定其参数:小时、分钟、秒。

提取日期和时间详细信息

以下函数与 DateSerialTimeSerial 函数相对应:

Day(MyDate)
MyDate 中返回是当月的第几天。
Month(MyDate)
MyDate 中返回月份。
Year(MyDate)
MyDate 中返回年份。
Weekday(MyDate)
MyDate 中返回是星期几。
Hour(MyTime)
MyTime 中返回小时数。
Minute(MyTime)
MyTime 中返回分钟数。
Second(MyTime)
MyTime 中返回秒数。

这些函数从指定的 Date 变量中提取日期或时间部分。以下示例检查 MyDate 中保存的日期是否为 2003 年。

Dim MyDate As Date
' ... Initialization of MyDate
 
If Year(MyDate) = 2003 Then
  ' ... Specified date is in the year 2003
End If

同样,以下示例检查 MyTime 是否介于 12 和 14 小时之间。

Dim MyTime As Date
' ... Initialization of MyTime
 
If Hour(MyTime) >= 12 And Hour(MyTime) < 14 Then
  ' ... Specified time is between 12 and 14 hours
End If

Weekday 函数返回传送的日期是星期几:

Dim MyDate As Date
Dim MyWeekday As String
' ... initialize MyDate
 
Select Case WeekDay(MyDate)
  case 1
    MyWeekday = "Sunday"
  case 2
    MyWeekday = "Monday"
  case 3
    MyWeekday = "Tuesday"
  case 4
    MyWeekday = "Wednesday"
  case 5
    MyWeekday = "Thursday"
  case 6
    MyWeekday = "Friday"
  case 7
    MyWeekday = "Saturday"
End Select
Documentation note.png Sunday 被视为每个星期的第一天。

检索系统日期和时间

Apache OpenOffice Basic 提供了下列函数以检索系统时间和系统日期:

Date
返回当前日期。
Time
返回当前时间。
Now
返回当前时间点(日期和时间的组合值)。
Content on this page is licensed under the Public Documentation License (PDL).
Personal tools