Groovy Convert between string and date

Reference:

http://java.dzone.com/articles/groovy-jdk-gdk-date-and

http://www.javabeat.net/2008/09/sample-code-for-simpledateformat/


//String to Date

import java.util.Date

def newDate ='2013-03-29T23:28:18.290'
def someDate ='2013-03-29T23:28:18.029'
someDate = someDate.replace("T", " ")
newDate = newDate.replace("T", " ")
println newDate 
println someDate 
def MyTs = Date.parse("yyyy-MM-dd HH:mm:ss.SSS", someDate)
def newTs = Date.parse("yyyy-MM-dd HH:mm:ss.SSS", newDate)
println("Myts: ${MyTs}")
println("newTs: ${newTs}")

println MyTs.toCalendar().time.time
println newTs.toCalendar().time.time

//Date to String

import java.text.SimpleDateFormat
today = new Date()
println(today)

sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS")
date11 = sdf.format(today); 
println date11

def calendarNow = today.toCalendar().time
println "Now: ${calendarNow} [${calendarNow.class}]"
def calendarTime = today.toCalendar().time.time
println "Now: ${calendarTime} [${calendarTime.class}]"

def timestampNow = today.toTimestamp()
println "Now: ${timestampNow} [${timestampNow.class}]"
def timestampTime = today.toTimestamp().time
println "Now: ${timestampTime} [${timestampTime.class}]"


import java.sql.Timestamp

def someDate ='2013-03-29T23:28:18.290'
someDate = someDate.replace("T", " ")
println someDate 
def ts = Timestamp.valueOf(someDate)
println(ts)

 

def string_timestamp(element) {
    def date = Date.parse('yyyy-MM-dd HH:mm:ss.S', element)
    return new Timestamp(date.time)
}

println(" Value = " + string_timestamp("2012-08-01 01:12:56.001"))

 

println("Groovy GDK Date.clearTime()")
def now = new Date()
println "Now: ${now}"
def timelessNow = now.clearTime()
println "Now sans Time: ${timelessNow}"
println "Mutated Time:  ${now}"

 

println("Groovy GDK Calendar.clearTime()")
def now = Calendar.getInstance()
println "Now: ${now}"
now.clearTime()
println "Now is Timeless: ${now}"


 

println("Groovy GDK Date.format(String)")
def now = new Date()
println "Now: ${now}"
def dateString = now.format("yyyy-MMM-dd HH:mm:ss a")
println "Formatted Now: ${dateString}"


 

println("Groovy GDK Calendar.format(String)")
def now = Calendar.getInstance()
println "Now: ${now}"
def calendarString = now.format("yyyy-MMM-dd HH:mm:ss a")
println "Formatted Now: ${calendarString}"


//Date.getDateString(), Date.getTimeString(), and Date.getDateTimeString()

import java.util.Date

println("Groovy GDK Date.getDateString()")
def now = new Date()
println "Now: ${now}"
println "Date Only: ${now.getDateString()}"
println "Now Unchanged: ${now}"

 

import java.util.Date

println("Groovy GDK Date.getTimeString()")
def now = new Date()
println "Now: ${now}"
println "Time Only: ${now.getTimeString()}"
println "Now Unchanged: ${now}"

 

import java.util.Date

println("Groovy GDK Date.getDateTimeString()")
def now = new Date()
println "Now: ${now}"
println "Date/Time String: ${now.getDateTimeString()}"
println "Now Unchanged: ${now}"



//Date.parse(String, String)

println("Groovy GDK Date.parse(String, String)")
def nowString = "2012-11-26 11:45:23"
println "Now String: ${nowString}"
def now = Date.parse("yyyy-MM-dd hh:mm:ss", nowString)
println "Now from String: ${now}"


//Date.parseToStringDate(String)

println("Groovy GDK Date.parseToStringDate(String)")
def now = new Date()
println "Now: ${now}"
def nowString = now.toString()
def nowAgain = Date.parseToStringDate(nowString)
println "From toString: ${nowAgain}"


//Date.toCalendar() and Date.toTimestamp()

import java.util.Date

println("Groovy GDK Date.toCalendar()")             
def now = new Date()                                
println "Now: ${now}"                               
def calendarNow = now.toCalendar()                  
println "Now: ${calendarNow} [${calendarNow.class}]"
import java.util.Date

println("Groovy GDK Date.toTimestamp()")                  
def now = new Date()                                      
println "Now: ${now}"                                     
def timestampNow = now.toTimestamp()                      
println "Now: ${timestampNow} [${timestampNow.class}]"    


//Date.updated(Map)

println("Groovy GDK Date.updated(Map)")

import static java.util.Calendar.YEAR
import static java.util.Calendar.DATE
import static java.util.Calendar.MONTH

def now = new Date()
def nextYear = now[YEAR] + 1
def nextDate = now[DATE] + 1
def prevMonth = now[MONTH] - 1
def oneYearFromNow = now.updated(year: nextYear, date: nextDate, month: prevMonth)
println "Now: ${now}"
println "1 Year from Now: ${oneYearFromNow}"


 

 


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章