日付をフォーマット付きStringで読み出す

ちょっとしたコードや設定などですが、忘れがちであらためて調べるのも面倒なので、忘備録的なものです。
順不同で、気づいたものから順にSwift4で使えるコードを載せていきます。

Swift-Tips

日付をフォーマット付きStringで読み出す

よく使う形式は関数にしておくと便利

ローカルな日付をYYYYMMDD形式の文字列で読み出す


    /// Return Date string as YYYYMMDD format String
    ///
    /// - parameter Date : 日付
    /// - returns: String as YYYYMMDD String
    func getLocalDateTimeString(_ date:Date? = Date() )->String {
        if date == nil {return "----/--/--"}
        let dateFormatter = DateFormatter()
        dateFormatter.locale = Locale.autoupdatingCurrent
        dateFormatter.dateFormat = "yyyy/MM/dd"
        return dateFormatter.string(from: date!) as String
    }

    let today = Date()    
    let stringDate = getLocalDateTimeString(today)

ちょっとフォーマットを変えて読み出したいなら


    /// Return Date string as format String
    ///
    /// - parameter Date : 日付
    /// - parameter format : フォーマット
    /// - returns: String as format String
    func getDateToString(_ date:Date?,format:String,nillStr:String = "")->String {
        if date == nil {return nillStr}
        let dateFormatter = DateFormatter()
        dateFormatter.locale = Locale.autoupdatingCurrent
        dateFormatter.dateFormat = format
        return dateFormatter.string(from: date!) as String
    }

    let today = Date()    
    let stringDate = getDateToString(today, format: "yyyy/MM/dd HH:mm:ss", nillStr: "----/--/--")

おまけ:年月日時分秒のプリフィクスを作る


func createFileID()->String { let dateFormatter = DateFormatter() dateFormatter.locale = Locale.autoupdatingCurrent dateFormatter.dateFormat = "yyyyMMddHHmmss_" let dateString = dateFormatter.string(from: Date()) as String return dateString }