如何输出某个数组?

时间:2013-10-10 17:22:03

标签: objective-c arrays nsstring

目标C语言 - >

我有cvs文件,我想将它读入NSString并创建数组,即:。

姓名,州,价格,邮政编码

John,WI,20000,43555 .. ..

#import <Foundation/Foundation.h>
#import <string.h>
int main(int argc, const char * argv[])

{
@autoreleasepool {
    //input user for a name on property list    
    int input;
NSLog(@"The worldcities.cvs contained infor on property names.");       
        NSLog(@"Enter a name: ");       
        scanf("%i", &input);

NSString *sourceFileString = [NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"filename" ofType:@"worldcities.csv"] encoding:NSUTF8StringEncoding error:nil];

        NSMutableArray *csvArray = [[NSMutableArray alloc] init];
        csvArray = [[sourceFileString componentsSeparatedByString:@"\n"] mutableCopy];

        NSString *keysString = [csvArray objectAtIndex:0];

        NSArray *keysArray = [keysString componentsSeparatedByString:@","];

        [csvArray removeObjectAtIndex:0];

我希望能够根据来自.cvs文件的create数组的用户输入输出属性名称,我该如何处理?

1 个答案:

答案 0 :(得分:0)

您可以创建核心数据结构,并使用.csv文件中的信息填充核心数据结构,而不是将其存储在数组中。然后,根据用户输入,您可以使用NSPredicate查询您需要输出的内容。

This是一个非常好的教程,使用核心数据并使用预先存在的文件填充核心数据。