私は NSArray からの可変コンテンツを持っています:let content = application["content"]!
コンテンツを印刷すると、文字列があります:
print(content)
->My content
しかし、変数を String にキャストしたい場合:let content = application["content"]! as! String
null であるため、変数を出力できません:
print(content)
->Could not cast value of type 'NSNull' (0x1a0507768) to 'NSString' (0x1a0511798).
なんで ?
アップデート :
値がキャストされていないときの私の配列:
{
"application_title" = "Marina Kaye";
"application_type" = discussions;
"application_type_name" = Discussions;
content = (
{
content = "Le nouvel album de Marina Kaye";
link = "?message_id=118";
},
{
content = "Son album est num\U00e9ro 1 des";
link = "?message_id=131";
},
{
content = "Le nouvel album s'appel";
link = "?message_id=126";
}
);
"content_title" = "Messages utiles";
"content_type" = "useful_messages";
}
値がキャストされたときの私の配列:
{
"application_title" = "Marina Kaye";
"application_type" = discussions;
"application_type_name" = Discussions;
content = "<null>";
"content_title" = "<null>";
"content_type" = "usefull_messages";
}
コンテンツを NSArray に、content_title を String にキャストできません。
私のコード:
let applicationsArray = result["applications"]! as! NSArray
for application in applicationsArray {
let applicationTitle = application["application_title"]! as! String
let applicationType = application["application_type"]! as! String
let applicationTypeName = application["application_type_name"]! as! String
let content = application["content"]! as! NSArray
let contentTitle = application["content_title"]! as! String
let contentType = application["content_type"]! as! String
self.listApplications.append(Application(applicationTitle: applicationTitle, applicationType: applicationType, applicationTypeName: applicationTypeName, content: content, contentTitle: contentTitle, contentType: contentType))
}