2012-01-11 29 views
5

Tôi cần thao tác và tính toán nhiều thứ liên quan đến ngày, chẳng hạn như "là hôm nay?", "Trước ngày hôm qua?", "Bây giờ cộng thêm 3 ngày" vv Có thư viện hay dsl nào trong scala có thể trợ giúp cái đó? Tôi đã hy vọng cho một cái gì đó với chuyển đổi tiềm ẩn.Có bất kỳ ngày/giờ DSL utils trong Scala?

Tôi sẽ sử dụng nó với đoạn mã nâng, vì vậy người giúp nâng cũng hoạt động. Tôi thấy rằng TimeHelpers trong thang máy có một số phương pháp, đó là một khởi đầu tốt nhưng tôi đang tìm kiếm một cái gì đó nhiều hơn nữa.

Trả lời

7

Bạn có thể sử dụng trình bao bọc scala sau cho thời gian joda.

Scala-time

2

Nếu bạn phải thao tác java.util.Date, đó cũng là Moments

2

Gần đây tôi phát triển Lamma mà phù hợp với trường hợp sử dụng của bạn khá tốt.

scala> import io.lamma._ // import at begining 
import io.lamma._ 

scala> Date(2014, 7, 10) - Date(2014, 7, 3) // calculate date difference 
res5: Int = 7 

scala> (2014, 7, 10) - (2014, 7, 3) // implicit conversion from (Int, Int, Int) 
res6: Int = 7 

scala> (2014, 7, 10) + 3 // plus 3 days 
res7: io.lamma.Date = Date(2014,7,13) 

scala> (2014, 7, 10) + 5.weeks // plus 5 weeks 
res8: io.lamma.Date = Date(2014,8,14) 

scala> (2014, 7, 10) + (5 weeks) // this will work too 
res9: io.lamma.Date = Date(2014,8,14) 

scala> (2014, 7, 10) + (10 years) // another expression 
res10: io.lamma.Date = Date(2024,7,10) 
Các vấn đề liên quan