首先将csv文件拖入到工程中
使用下面代码读取文件:
-(void)readCSVData{
NSString *path = [[NSBundle mainBundle] pathForResource:@"ceshi1" ofType:@"csv"];
NSError *error = nil;
NSString *fileContents = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error];
//取出每一行的数据
NSArray *_allLinedStrings = [fileContents componentsSeparatedByString:@"\r\n"];
NSLog(@"%@",_allLinedStrings);
}
NSString *path = [[NSBundle mainBundle] pathForResource:@"ceshi1" ofType:@"csv"];
NSError *error = nil;
NSString *fileContents = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error];
//取出每一行的数据
NSArray *_allLinedStrings = [fileContents componentsSeparatedByString:@"\r\n"];
NSLog(@"%@",_allLinedStrings);
}
此时可能会报如下错误:
The file “ceshi1.csv” couldn’t be opened using text encoding Unicode (UTF-8)
这个错误可能是编码格式引起的。
尝试使用如下代码读取数据:
-(void)readCSVData{
NSString *path = [[NSBundle mainBundle] pathForResource:@"ceshi1" ofType:@"csv"];
NSError *error = nil;
unsigned long encode = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
NSString *fileContents = [NSString stringWithContentsOfFile:path encoding:encode error:&error];
//取出每一行的数据
NSArray *_allLinedStrings = [fileContents componentsSeparatedByString:@"\r\n"];
NSLog(@"%@",_allLinedStrings);
}
NSString *path = [[NSBundle mainBundle] pathForResource:@"ceshi1" ofType:@"csv"];
NSError *error = nil;
unsigned long encode = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
NSString *fileContents = [NSString stringWithContentsOfFile:path encoding:encode error:&error];
//取出每一行的数据
NSArray *_allLinedStrings = [fileContents componentsSeparatedByString:@"\r\n"];
NSLog(@"%@",_allLinedStrings);
}
成功读取数据。
参考文章: