I am trying to convert [String : String] (Swift Dictionary) to NSDictionary , for later use in the JSON library that creates the string
var parcelDict = ["trackingNumber" : parcel.number, "dstCountry" : parcel.countryCode]; if (parcel.postalService != nil) { parcelDict["postalService"] = parcel.postalService; } var errorPtr: NSErrorPointer let dict: NSDictionary = parcelDict var data = NSJSONSerialization.dataWithJSONObject(dict, options:0, error: errorPtr) as NSData return NSString(data: data, encoding: NSUTF8StringEncoding)
but let dict: NSDictionary = parcelDict does not work
let dict: NSDictionary = parcelDict as NSDictionary var data = NSJSONSerialization.dataWithJSONObject(parcelDict as NSMutableDictionary, options:0, error: errorPtr) as NSData
All of these examples do not work. They cause the following errors:


What is the right way to do this?
Update:
Code that works
var parcelDict = ["trackingNumber" : parcel.number!, "dstCountry" : parcel.countryCode!]; if (parcel.postalService != nil) { parcelDict["postalService"] = parcel.postalService; } var jsonError : NSError? let dict = parcelDict as NSDictionary var data = NSJSONSerialization.dataWithJSONObject(dict, options:nil, error: &jsonError) return NSString(data: data!, encoding: NSUTF8StringEncoding)!
source share