【问题标题】:Converting Date Components (Integer) to String将日期组件(整数)转换为字符串
【发布时间】:2015-08-11 17:27:17
【问题描述】:

我的代码采用 NSDate 并读取年、月和日,然后将它们串在一起作为一个整数。我接下来想把这个Int转成String,这样就可以插入到URL String中了,但是没有成功:

let calendarUnits: NSCalendarUnit = .CalendarUnitDay | .CalendarUnitMonth | .CalendarUnitYear
let components = NSCalendar.currentCalendar().components(calendarUnits, fromDate: dateToBeExamined)
var dateInt = components.year
dateInt += components.day
dateInt += components.month
var dateString = dateInt as! String

我尝试了几种方法,包括以下几种:

"\(dateInt)"
dateInt.description
dateInt as String
String(dateInt)

但是,他们都告诉我“Int 不能转换为 String”,或者,用“!”在“as”之后,“Int 转换为 String 将始终失败”。有没有人有办法解决这个问题?

【问题讨论】:

    标签: swift xcode6


    【解决方案1】:
    let dateString = "\(components.year)\(components.day)\(components.month)"
    println("dateString: \(dateString)")
    

    输出:

    日期字符串:2015118

    let dateString = String(components.year) + String(components.day) + String(components.month)
    

    【讨论】:

      【解决方案2】:

      你的第一次 - 几次 - 尝试是正确的

      let dateString = "\(dateInt)"
      

      或“复杂”版本

      let dateString = String(stringInterpolationSegment: dateInt)
      

      编辑:但您可能想要连接字符串值而不是执行数学加法,然后使用 zaph 答案的语法。

      【讨论】:

      • 奇数。它以前没有用,但我现在又试了一次,它工作正常。谢谢!
      猜你喜欢
      • 2020-06-27
      • 2012-02-23
      • 1970-01-01
      • 2014-02-02
      • 2017-09-19
      • 1970-01-01
      • 2018-04-13
      • 1970-01-01
      • 2015-04-27
      相关资源
      最近更新 更多