美文网首页
iOS中输出Excel表数据

iOS中输出Excel表数据

作者: 9bf19a4010ab | 来源:发表于2017-07-21 14:25 被阅读34次

最近需要将接口中返回的数据进行整理 最终要以Excel表的形式输出 所有今天整理了一下相关代码 仅供参考

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    self.view.backgroundColor = [UIColor whiteColor];
    [self createXLSFile];
}
- (void)createXLSFile {
NSMutableArray  *xlsDataMuArr = [[NSMutableArray alloc] init];
[xlsDataMuArr addObject:@"姓名"];
[xlsDataMuArr addObject:@"电话号"];
[xlsDataMuArr addObject:@"性别"];
[xlsDataMuArr addObject:@"用户上线时间"];
[xlsDataMuArr addObject:@"房源发布"];
[xlsDataMuArr addObject:@"房源删除"];
[xlsDataMuArr addObject:@"房源推送"];
[xlsDataMuArr addObject:@"房源取消推送"];
[xlsDataMuArr addObject:@"房源置顶"];
[xlsDataMuArr addObject:@"房源取消置顶"];
[xlsDataMuArr addObject:@"置顶立即刷新"];
[xlsDataMuArr addObject:@"置顶预约刷新"];
[xlsDataMuArr addObject:@"用户签到"];
[xlsDataMuArr addObject:@"用户报备"];
[xlsDataMuArr addObject:@"新增用户"];
[xlsDataMuArr addObject:@"启动次数"];
for (int i = 0; i < 100; i++) {
    [xlsDataMuArr addObject:@"于*"];
    [xlsDataMuArr addObject:@"1830423****"];
    [xlsDataMuArr addObject:@"男"];
    [xlsDataMuArr addObject:@"2017.7.21 13:17:27"];
    [xlsDataMuArr addObject:@"1"];
    [xlsDataMuArr addObject:@"2"];
    [xlsDataMuArr addObject:@"1"];
    [xlsDataMuArr addObject:@"2"];
    [xlsDataMuArr addObject:@"3"];
    [xlsDataMuArr addObject:@"2"];
    [xlsDataMuArr addObject:@"2"];
    [xlsDataMuArr addObject:@"3"];
    [xlsDataMuArr addObject:@"2"];
    [xlsDataMuArr addObject:@"3"];
    [xlsDataMuArr addObject:@"3"];
    [xlsDataMuArr addObject:@"2"];
}
NSString *fileContent = [xlsDataMuArr componentsJoinedByString:@"\t"];
NSMutableString *muStr = [fileContent mutableCopy];
NSMutableArray *subMuArr = [NSMutableArray array];
for (int i = 0; i < muStr.length; i ++) {
    NSRange range = [muStr rangeOfString:@"\t" options:NSBackwardsSearch range:NSMakeRange(i, 1)];
    if (range.length == 1) {
        [subMuArr addObject:@(range.location)];
    }
}
for (NSUInteger i = 0; i < subMuArr.count; i ++) {
    if ( i > 0 && (i%16 == 0) ) {
        [muStr replaceCharactersInRange:NSMakeRange([[subMuArr objectAtIndex:i-1] intValue], 1) withString:@"\n"];
    }
}
NSFileManager *fileManager = [[NSFileManager alloc]init];
NSData *fileData = [muStr dataUsingEncoding:NSUTF16StringEncoding];
NSString *path = NSHomeDirectory();
NSString *filePath = [path stringByAppendingPathComponent:@"/Documents/export.xls"];
NSLog(@"文件路径:\n%@",filePath);
[fileManager createFileAtPath:filePath contents:fileData attributes:nil];
}

To Be Continued...

相关文章

网友评论

      本文标题:iOS中输出Excel表数据

      本文链接:https://www.haomeiwen.com/subject/rwhekxtx.html