2013-06-08 8 views
32

मैं स्काला के लिए नया हूँ और मैं पिछले कुछ दिनों के लिए यह सीखा है। मुझे स्केल की तारीख स्ट्रिंग से परिवर्तित करने के बारे में संदेह है।स्केल में तारीख से स्ट्रिंग को कैसे परिवर्तित करें?

कैसे स्काला का उपयोग कर का दिनांक और समय के लिए स्ट्रिंग परिवर्तित करने के लिए?

यह जावा के रूप में एक ही तरह से काम करता है?

जब मैं ऐसा करता हूं, तो मुझे एक कंपाइलर त्रुटि मिलती है और मैं इसे स्कैला में परिवर्तित नहीं कर सकता क्योंकि मैं स्कैला के लिए नया हूं। और मुझे पता है कि यह स्काला के जावा कन्वर्ट करने के लिए ...

कृपया अपने उत्तर का हिस्सा अच्छा नहीं है।

+2

हाँ .. यह जावा में के रूप में एक ही तरह से काम करता है .. http://stackoverflow.com/a/5377949/920271 – Shrey

उत्तर

41

आप जावा के util.Date उपयोग कर रहे हैं तो जावा में की तरह: formating के लिए

val format = new java.text.SimpleDateFormat("yyyy-MM-dd") 
format.parse("2013-07-06") 

डॉक्स - SimpleDateFormat

या यदि आप Joda के दिनांक समय का उपयोग कर रहे हैं, तो पार्स विधि कॉल:

DateTime.parse("07-06-2013") 

दस्तावेज़ - DateTime

+1

वहाँ स्केला इस रूपांतरण की implicits युक्त पुस्तकालय में किसी भी पैकेज है? अवधि की तरह कुछ। – Jatin

+2

@ जतिन नहीं, लेकिन आप इसे अपने आप लिख सकते हैं: 'implicit def str2date (str: स्ट्रिंग) = DateTime.parse (str)' – 4lex1v

+0

यदि आप अपने आवेदन पर एक से अधिक निष्पादन धागा रखने की योजना बना रहे हैं, तो आपको इसका उपयोग नहीं करना चाहिए 'SimpleDateFormat', न ही 'java.util.Date', क्योंकि वे थ्रेड-सुरक्षित नहीं हैं (चेतावनी जावा 7- के लिए मान्य है)। इस मामले में, 'joda.time' पर विचार करें। – mlg

5

मेरा जाने-माने विकल्प nscala-time का उपयोग करना है: https://github.com/nscala-time/nscala-time

एसबीटी का उपयोग करते हुए इसे अपने build.sbt में जोड़ें।

libraryDependencies += "com.github.nscala-time" %% "nscala-time" % "1.8.0" 

अपनी तिथि आयात और पार्स करें।

import com.github.nscala_time.time.Imports._ 

DateTime.parse("2014-07-06") 
संबंधित मुद्दे