前言

之前有介紹過Date 簡易使用
有說要補齊其他會用的
基本上會使用的應該就是
現在星期幾
這個月有幾天
方便統計
剩下還有
Date 轉 String
String 轉 Data

上次簡易使用Date

使用以下程式碼就可以知道現在時間的字串

let currentDate = Date()
let dataFormatter = DateFormatter()
dataFormatter.locale = Locale(identifier: "zh_Hant_TW")
dataFormatter.dateFormat = "YYYY-MM-dd HH:mm:ss"
let stringDate = dataFormatter.string(from: currentDate)

Date 轉 String

//Data 轉 String

func dateToDateString(_ date:Date) -> String {
    let timeZone = NSTimeZone.local
    let formatter = DateFormatter()
    formatter.timeZone = timeZone
    formatter.dateFormat = "yyyy-MM-dd  HH:mm:ss"
    let date = formatter.string(from: date)
    return date
}

String 轉 Date

//String 轉 Data
func timeStringToDate(_ dateStr:String) ->Date {
    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "yyyy-MM-dd  HH:mm:ss"
    let date = dateFormatter.date(from: dateStr)
    return date!
}

今天禮拜幾

用以下程式碼可以show出現在禮拜幾
print 出來是Int-1 才能符合你的星期

let currentDate = Date()
let dataFormatter = DateFormatter()
dataFormatter.locale = Locale(identifier: "zh_Hant_TW")
dataFormatter.dateFormat = "YYYY-MM-dd HH:mm:ss"
let stringDate = dataFormatter.string(from: currentDate)
print(stringDate)

let calender = Calendar(identifier:Calendar.Identifier.gregorian)
let comps = (calender as NSCalendar?)?.components(NSCalendar.Unit.weekday, from: currentDate)
print(comps?.weekday)

這個月有幾天

func countOfDaysInCurrentMonth() ->Int {
    let calendar = Calendar(identifier:Calendar.Identifier.gregorian)
    let range = (calendar as NSCalendar?)?.range(of: NSCalendar.Unit.day, in: NSCalendar.Unit.month, for: Date())
    return (range?.length)!
}

應該統計要使用的功能就是這幾種
就可以平均每週或每月的東西拉

Swift更多文章

[教學] Swift 找字串 文字找字串


Swift字串拼接 文字拼接
Swift 字串擷取 文字擷取
Swift – 陣列轉字串 | Array to String | List to String | description
Swift Date 現在星期幾 這個月有幾天
Swift – 正規表達式 (電話/身分證/email)


Categorized in: