2011-02-14 85 views
0

嗯,我目前正在调用一个方法,需要一个字符输入方法,但我的数据是从文件加载而不是放入数组,然后我想将数组的元素之一转换为一个const char(所有数组的元素都是URL的)。基本上我试图做的是让程序加载一个特定的文件,然后分别将行放入数组的元素(我的意思是:1行= 1个新的数组元素),然后我做了这样一个for循环:如何进行数据转换:NSArray char

NSUInteger nElements = [array count]; 
int i; 
for (i = 0; i<nElements; i++) { 
    const char* urlName = [[array objectAtIndex:i] cStringUsingEncoding:NSUTF8StringEncoding]; // I don't know if this is correct but don't works :) 
} 
+1

您ordina几乎不需要使用`objectAtIndex:`来遍历数组。快速枚举既快又清晰。 http://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/ObjectiveC/Articles/ocFastEnumeration.html – 2011-02-14 21:10:19

回答

2

如果它是NSURL对象的数组,你必须将它们转换为字符串,像这样:

const char* urlName = [[[array objectAtIndex:i] absoluteString] UTF8String]; 
1

假设它的NSString数组,你可以这样做:

const char* urlName = [[array objectAtIndex:i] UTF8String];