Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
98
Task/Date-manipulation/PureBasic/date-manipulation.basic
Normal file
98
Task/Date-manipulation/PureBasic/date-manipulation.basic
Normal file
|
|
@ -0,0 +1,98 @@
|
|||
EnableExplicit
|
||||
|
||||
Procedure.i ToPBDate(Date$, *zone.String)
|
||||
Protected year, month, day, hour, minute
|
||||
Protected month$, temp$, time$, pm$, zone$
|
||||
month$ = StringField(date$, 1, " ")
|
||||
day = Val(StringField(date$, 2, " "))
|
||||
year = Val(StringField(date$, 3, " "))
|
||||
time$ = StringField(date$, 4, " ")
|
||||
zone$ = StringField(date$, 5, " ")
|
||||
|
||||
Select month$
|
||||
Case "January" : month = 1
|
||||
Case "February" : month = 2
|
||||
Case "March" : month = 3
|
||||
Case "April" : month = 4
|
||||
Case "May" : month = 5
|
||||
Case "June" : month = 6
|
||||
Case "July" : month = 7
|
||||
Case "August" : month = 8
|
||||
Case "September" : month = 9
|
||||
Case "October" : month = 10
|
||||
Case "November" : month = 11
|
||||
Case "December" : month = 12
|
||||
EndSelect
|
||||
|
||||
hour = Val(StringField(time$, 1, ":"))
|
||||
temp$ = StringField(time$, 2, ":")
|
||||
minute = Val(Left(temp$, 2))
|
||||
pm$ = Right(temp$, 2)
|
||||
|
||||
If pm$ = "am"
|
||||
If hour = 12 : hour = 0 : EndIf
|
||||
Else
|
||||
If hour <> 12 : hour + 12 : EndIf
|
||||
EndIf
|
||||
|
||||
*zone\s = zone$
|
||||
ProcedureReturn Date(year, month, day, hour, minute, 0)
|
||||
EndProcedure
|
||||
|
||||
Procedure.s FromPBDate(Date, zone$)
|
||||
Protected year$ = Str(Year(Date))
|
||||
Protected month = Month(Date)
|
||||
Protected day$ = Str(Day(Date))
|
||||
Protected hour = Hour(Date)
|
||||
Protected minute = Minute(Date)
|
||||
Protected month$, time$, pm$, result$
|
||||
|
||||
Select month
|
||||
Case 1 : month$ = "January"
|
||||
Case 2 : month$ = "February"
|
||||
Case 3 : month$ = "March"
|
||||
Case 4 : month$ = "April"
|
||||
Case 5 : month$ = "May"
|
||||
Case 6 : month$ = "June"
|
||||
Case 7 : month$ = "July"
|
||||
Case 8 : month$ = "August"
|
||||
Case 9 : month$ = "September"
|
||||
Case 10 : month$ = "October"
|
||||
Case 11 : month$ = "November"
|
||||
Case 12 : month$ = "December"
|
||||
EndSelect
|
||||
|
||||
If hour > 12
|
||||
hour - 12
|
||||
pm$ = "pm"
|
||||
ElseIf hour = 12
|
||||
pm$ = "pm"
|
||||
Else
|
||||
If hour = 0 : hour = 12 : EndIf
|
||||
pm$ = "am"
|
||||
EndIf
|
||||
|
||||
time$ = Str(hour) + ":" + RSet(Str(minute), 2, "0") + pm$
|
||||
result$ = month$ + " " + day$ + " " + year$ + " " + time$ + " " + zone$
|
||||
ProcedureReturn result$
|
||||
EndProcedure
|
||||
|
||||
Define date
|
||||
Define date1$, date2$
|
||||
Define zone.String
|
||||
|
||||
If OpenConsole()
|
||||
date1$ = "March 7 2009 7:30pm EST"
|
||||
PrintN("Starting date/time : " + date1$)
|
||||
date = ToPBDate(date1$, @zone)
|
||||
date = AddDate(date, #PB_Date_Hour, 12); add 12 hours
|
||||
date2$ = FromPBDate(date, zone\s)
|
||||
PrintN("12 hours later : " + date2$)
|
||||
date = AddDate(date, #PB_Date_Hour, 5); adjust to GMT
|
||||
date2$ = FromPBDate(date, "GMT")
|
||||
PrintN("Or in GMT timezone : " + date2$)
|
||||
PrintN("")
|
||||
PrintN("Press any key to close the console")
|
||||
Repeat: Delay(10) : Until Inkey() <> ""
|
||||
CloseConsole()
|
||||
EndIf
|
||||
Loading…
Add table
Add a link
Reference in a new issue