当我将一个字符串数组打印到日志中时,大多数字符串会出现,就像他们想象的那样,但有时这样的节目是这样的:
\U200e\U05d3\U05d5\U05e8\U05d9\U05ea \U05dc\U05d5\U05d9\U200e
是什么导致了这个问题?
答案 0 :(得分:0)
使用NSLog记录数组时,或者使用print
记录NSArray时,您依赖于Cocoa的日志记录。它已经很老了,所以它通过显示其代码点来表示非ASCII字符串。
如果您不喜欢这样,请使用Swift的print
进行登录,并确保您记录的是Swift数组,而不是NSArray。
let s = "\u{200e}\u{05d3}\u{05d5}\u{05e8}\u{05d9}\u{05ea}"
NSLog("%@",[s]) // Cocoa is logging
print([s] as NSArray) // Cocoa is logging
print([s]) // Swift is logging