将excel中内容转为plist文件

今天遇到了一个问题,内容描述如下:
有一个excel 有几百上千行数据,例如:

name  number    content   。。。。。。。
张三    12132      xxxxxxxxxx
李四   321321    yyyyyyy
。。。。

想把这些数据运用到app中,可是找不到合适的方法,本来是想给转为sqlite 的,找了半天mac下sqlite管理工具,没找到太麻烦了,索性就想把这些数据作为字典存放在数组里,方法如下:
1.将excel 转为csv文件(备注,这里可能会遇到文字编码问题,我是将csv文件内容复制粘贴为txt);
2.代码:关键代码如下:
   NSString *path = [[NSBundle mainBundle] pathForResource:@"4" ofType:@"txt"];
    NSString *contents = [[NSString alloc] initWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
    NSArray *contentsArray = [contents componentsSeparatedByCharactersInSet:[NSCharacterSet newlineCharacterSet]];

    NSString *docs = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/xxxx.plist"] ;
    NSMutableArray *arr = [[NSMutableArray alloc] init];
    
    NSInteger idx;   
    for (idx = 0; idx < contentsArray.count; idx++) {
        NSString* currentContent = [contentsArray objectAtIndex:idx];
        NSArray* timeDataArr = [currentContent componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@";"]];
        NSMutableDictionary *dic = [[NSMutableDictionary alloc] init];
        [dic setObject:[timeDataArr objectAtIndex:0] forKey:@"name"];
        [dic setObject:[timeDataArr objectAtIndex:1] forKey:@"number"];
        [dic setObject:[timeDataArr objectAtIndex:2] forKey:@"CONTENT"];
        [arr addObject:dic];
    }
    [arr writeToFile:docs atomically:YES];

3.下次想用这些数据就可以直接从plist里面读取啦~~

你可能感兴趣的:(Iphone)