0

抱歉我的英语不好,但我做了三天,有人可以帮我吗?

我是新手 xcode 程序员,我只想从我的 csv 文件中返回数据,但它始终为空

我尝试在这里阅读很多帖子。我一次又一次地复制和编辑,但它不起作用。

.

我的 csv 文件中的数据

INTEL Core-i3 3220 3.3 HD2500,x,
AMD FX9590 4.7 8core Black Edition,x,
INTEL Core i3-4130 3.4 HD4400,x,
AMD FX9370 4.4 8core,x,
INTEL Core i3-4330 3.5 HD4600,x,
AMD FX8350 4.0 8core,x

这是我的 NSObject

@synthesize cpuData,selectedCpu;
NSMutableArray *x;
-(NSArray *)sendCpu{
    NSArray *itemArray;
    NSString *filepath = [[NSBundle mainBundle] pathForResource:@"xcpu" ofType:@"csv"];
    NSString *content =  [NSString stringWithContentsOfFile:filepath encoding:NSUTF8StringEncoding error:nil];
    NSArray *arrayfarm = [content componentsSeparatedByString:@"\n"];
    for (NSString *item in arrayfarm) {
       itemArray = [item componentsSeparatedByString:@",x"];
        [x addObject:itemArray];
    }
    return [x objectAtIndex:cpuData];
}
@end

这是我的视图控制器

- (void)viewDidLoad
{
    [super viewDidLoad];
globalData *d = [[globalData alloc]init];
    for (int i=1;i<20;i++){
        [d setCpuData:i];
         NSLog(@"%@",[d sendCpu]);
    } 
}

还有一个问题请有人告诉我如何选择数据之一

我只想要的例子

"INTEL Core-i3 3220 3.3 HD2500" from "INTEL Core-i3 3220 3.3 HD2500,x"

我尝试做很多方式,但我做不到

感谢您的关注,并对我的英语非常糟糕感到抱歉

4

1 回答 1

0

你错过了:

x = [[NSMutableArray alloc] init];

如果你没有使用 ARC,那么你也应该在完成后释放它:

NSArray *result = [x objectAtIndex:cpuData];
[x release];
return result;
于 2013-10-05T20:37:35.583 回答