המרת מחרוזת לדייט בגרובי
1. סקירה כללית
במדריך קצר זה, נלמד כיצד להמיר חוּט מייצג תאריך לממשי תַאֲרִיך חפץ בגרובי.
עם זאת, עלינו לזכור ששפה זו מהווה שיפור ב- Java. לכן, אנו עדיין יכולים להשתמש בכל שיטת Java ישנה רגילה, בנוסף לשיטות ה- Groovy החדשות.
2. שימוש פורמט תאריך
ראשית, אנו יכולים לנתח מחרוזות בתאריכים, כרגיל, באמצעות Java פורמט תאריך:
תבנית def = "yyyy-MM-dd" קלט def = "2019-02-28" def date = חדש SimpleDateFormat (תבנית) .parse (קלט)
גרובי, לעומת זאת, מאפשר לנו לבצע פעולה זו ביתר קלות. זה מכיל את אותה התנהגות בתוך השיטה הסטטית של הנוחותDate.parse (פורמט מחרוזת, קלט מחרוזת):
def date = Date.parse (תבנית, קלט)
בקיצור, שיטה זו מהווה הרחבה של ה- java.util.Date אובייקט, ובפנים הוא מייצר א java.text.DateFormatבכל קריאה, לבטיחות חוטים.
2.1. בעיות תאימות
להבהרה, Date.parse (פורמט מחרוזת, קלט מחרוזת) השיטה זמינה מאז גרסה 1.5.7 של גרובי.
גרסה 2.4.1 הציגה גרסה המקבלת פרמטר שלישי המציין אזור זמן: Date.parse (פורמט מחרוזת, קלט מחרוזת, אזור TimeZone).
עם זאת, החל מ -2.5.0 חל שינוי שבור ושיפורים אלה אינם נשלחים יותר גרובי-הכל.
אז, בהמשך, הם צריכים להיכלל כמודול נפרד בשם groovy-dateutil:
org.codehaus.groovy groovy-dateutil 2.5.6
יש גם גרסה 3.0.0, אך כרגע היא נמצאת בשלב האלפא.
3. שימוש ב- JSR-310 LocalDate
מאז גרסה 8 ג'אווה הציגה מערך כלים חדש לגמרי לטיפול בתאריכים: ה- Date / Time API.
ממשקי API אלה טובים יותר מכמה סיבות יש להעדיף על פני המורשת.
בואו נראה איך לנצל את java.time.LocalDate יכולות ניתוח מ- Groovy:
def date = LocalDate.parse (קלט, תבנית)
4. מסקנה
ראינו כיצד להפוך א חוּט לתוך תַאֲרִיך בשפה הגרובית, תוך שימת לב למוזרויות בין הגרסאות הספציפיות.
כמו תמיד, קוד המקור ובדיקות היחידות זמינות ב- GitHub.