在使用带有Excel的Scripting Bridge时,当我得到单个单元格的值时,我不知道我将从单元格获得什么类。到目前为止,单个单元格的范围返回NSString
或NSNumber
(多个单元格的范围始终返回NSArray
,我需要强制从那里的值)。在我的工作,我通常只希望小区的字符串值,这样可以在单细胞范围的值对象转换成我需要什么,我这样做...寻找更好的方法来测试一个对象的类类型
NSString *cellValue = [targetRange.value get];
if ([cellValue isKindOfClass:[NSString class]]) {
cellValue = [targetRange.value get];
} else if ([cellValue isKindOfClass:[NSNumber class]]) {
cellValue = [[targetRange.value get] stringValue];
}
我的问题在于第一行(我们暂时忽略第三行,因为我还在做一些重构)。是否会有更好的课程来捕捉细胞的价值来测试课堂反对?最后三条线路运行良好,但我不觉得这样做完全舒服;这似乎不直观,但与NSObject
感觉一样奇怪。
我想我尝试过`id`,但是没有长时间包裹我的大脑以充分理解我在做什么。谢谢 – 2010-12-22 21:01:04