Swift 格式化数组

Swift 格式化数组,swift,Swift,这完美地格式化了我的表情符号: lblEmoji!.text = String(format: "%C", 0xe04f) 但是,只要我将字符串更改为我的子数组,它就不能正确格式化为表情符号 lblEmoji!.text = questionArray.objectAtIndex(currQuestionCount-1).valueForKey("quesimage") as? String;(format: "%C", 0xe04f) 我哪里出错了?String;(格式:“%C”,0xe0

这完美地格式化了我的表情符号:

lblEmoji!.text = String(format: "%C", 0xe04f)
但是,只要我将字符串更改为我的子数组,它就不能正确格式化为表情符号

lblEmoji!.text = questionArray.objectAtIndex(currQuestionCount-1).valueForKey("quesimage") as? String;(format: "%C", 0xe04f)
我哪里出错了?

String;(格式:“%C”,0xe04f)
错误。我甚至不知道你想在这里做什么

如果
questionArray
中的对象有一个字符串变量
quesimage
(这是您的表情符号值),为什么不直接获取该变量而不初始化新字符串呢

if let str = questionArray.objectAtIndex(currQuestionCount-1).valueForKey("quesimage") as? String {
    lblEmoji!.text = str
}
或者,如果需要使用格式字符串:

lblEmoji!.text = String(format: "%C", str)
如果
quesimage
是UTF8字符串的常规字符串表示形式,请使用如下格式字符串:

let utf8str = "0xe04f" // your value coming from quesimage

let emojiStr = String(format: "%C", arguments: [utf8str])
print(emojiStr) // ⑰
lblEmoji!.text = emojiStr

什么是
字符串;(格式:“%C”,0xe04f)
,这毫无意义。您是否试图从
currQuestionCount
数组中提取Unicode表情符号值,并用新的表情符号替换标签文本?是的,正确-非常感谢您回复JAL。没有格式,标签只显示表情代码的文本值。有利姆莫吉!。text=String(格式:“%C”,0xe04f)将其格式化以显示图片表情符号。出于某种原因,您的上一个显示了一个亚洲字符(我尝试时得到了相同的结果)@BCLtd您正在传入硬编码值
0xe04f
。这不是您试图从数组中提取的值吗?我想要这个值,因为这是UTF-16十六进制代码(我想它被调用了),如果您在看到之前尝试我显示的格式化行,它会将其转换为emoji@BCLtd
quesimage
是UTF8字符串吗?它只是UTF16字符串