Swift:
המרת תאריך למחרוזת
איך לעשות:
ב-Swift, נעשה שימוש ב-DateFormatter להמרה זו. הנה דוגמה:
import Foundation
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd/MM/yyyy"
let date = Date()
let dateString = dateFormatter.string(from: date)
print(dateString)פלט דוגמה:
23/04/2023אם נרצה פורמט שונה, פשוט נשנה את dateFormat:
dateFormatter.dateFormat = "E, d MMM yyyy HH:mm:ss"
let dateStringWithTime = dateFormatter.string(from: date)
print(dateStringWithTime)פלט דוגמה:
Sun, 23 Apr 2023 14:36:52ניתוח עמוק
פורמטר תאריכים ב-Swift התפתח מהסביבות הראשונות של Objective-C. כמעט כל מה שנעשה כיום ב-Swift עם DateFormatter ניתן היה לבצע באופן דומה ב-Objective-C.
חלופות ל-DateFormatter כוללות שימוש ב-Swift 5.5 ומעלה ב-ISO8601DateFormatter לפורמט בסטנדרט ISO 8601, או RelativeDateTimeFormatter להצגת תאריכים יחסיים כמו “לפני 3 שעות”.
בביצוע המרה, שימו לב לביצועים: DateFormatter יכול להיות משאב רב בשימוש חוזר; כדי למנוע זאת, אפשר לאתחל אותו פעם אחת ולשנות את ה-dateFormat לפי הצורך.
ראו גם
- המדריך המלא ל-
DateFormatterבקישור הזה: Date Formatting Guide - מסמכי אפל לעבודה עם תאריכים וזמנים: Working with Dates and Times
- שאלות נפוצות על מיפוי התאריכים למחרוזות ב-Stack Overflow: Date to String in Swift