CSV全称 Comma Separated values,是一种用来存储数据的纯文本文件格式,通常用于电子表格或数据库软件。用Excel或者Numbers都可以导出CSV格式的数据。
CSV文件的规则
1. 可含或不含列名,含列名则居文件第一行。
2. 一行数据不垮行,无空行。
3. 以半角符号,作分隔符,列为空也要表达其存在。
4. 列内容如存在,,则用“”包含起来。
5. 列内容如存在“”则用“”“”包含。
6. 文件读写时引号,逗号操作规则互逆。
7. 内码格式不限,可为ASCII、Unicode或者其他。
以上介绍来自于网络!
//保存一个字典
-(void)writeDict:(NSDictionary *)dict forFirst:(BOOL)first{
NSMutableString *str = [NSMutableString string];
//第一次写入字典的key值
if (first) {
for (NSString *key in dict.allKeys) {
//"," 换列
[str appendString:[NSString stringWithFormat:@"%@,",key]];
}
}
//换行
[str appendString:@"\n"];
for (NSString *value in dict.allValues) {
[str appendString:[NSString stringWithFormat:@"%@,",value]];
}
[self writeData:[str dataUsingEncoding:self.encode]];
isFirst = false;
}
//保存一个数组
-(void)writeArray:(NSArray *)arr{
id element = arr[0];
if ([element isKindOfClass:[NSString class]]) {
NSMutableString *str_M = [NSMutableString string];
for (NSString *str in arr) {
[str_M appendString:[NSString stringWithFormat:@"%@,",str]];
}
[str_M appendString:@"\n"];
[self writeData:[str_M dataUsingEncoding:self.encode]];
}
else if ([element isKindOfClass:[NSDictionary class]]){
isFirst = true;
for (NSDictionary *dict in arr) {
[self writeDict:dict forFirst:isFirst];
}
}
else if ([element isKindOfClass:[NSArray class]]){
for (NSArray *subArr in arr) {
[self writeArray:subArr];
}
}
}
完整代码:
http://download.csdn.net/detail/wackosix/9151755