将日期组件(整数)转换为字符串

时间:2015-08-11 17:27:17

标签: swift xcode6

我的代码采用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 cast to String将永远失败”。有没有人有办法解决这个问题?

2 个答案:

答案 0 :(得分:3)

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

输出:

  

dateString:2015118

{{1}}

答案 1 :(得分:1)

你的第一次尝试是正确的

db.cache.find({objectKey: { $regex: 'Bos*'}, cacheVersionString:'08/03/15_11:05:09'}).count()

或“复杂”版本

let dateString = "\(dateInt)"

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