6

データを Excel にエクスポートしましたが、正常に動作します。でもちょっと質問があります

出力は次のようにエクスポートされます。

ここに画像の説明を入力

私がしたいことはこれです:

ここに画像の説明を入力

これはエクスポートする私のコードです:

-(void)exportCSV {

    NSArray * data = [NSArray arrayWithObjects:entries,keys, nil];
    NSLog(@"%@",data);
    csv =[NSMutableString string];
    for (NSArray * line in data) {
        NSMutableArray * formattedLine = [NSMutableArray array];
        for ( field in line) {
            BOOL shouldQuote = NO;
            NSRange r = [field rangeOfString:@","];
            //fields that contain a , must be quoted
            if (r.location != NSNotFound) {
                shouldQuote = YES;
            }
            r = [field rangeOfString:@"\""];
            //fields that contain a " must have them escaped to "" and be quoted
            if (r.location != NSNotFound) {
                field = [field stringByReplacingOccurrencesOfString:@"\"" withString:@"\"\""];
                shouldQuote = YES;
            }
            if (shouldQuote == YES) {
                [formattedLine addObject:[NSString stringWithFormat:@"\"%@\"\"%@\"", entries,keys]];
            } else {
                [formattedLine addObject:field];
            }
        }

        NSString * combinedLine = [formattedLine componentsJoinedByString:@";"];
        [csv appendFormat:@"%@\n", combinedLine];

        NSLog(@"%@",csv);
    }

}
4

1 に答える 1

3

以下はあなたが望むことをしますか?
引用は考慮していないことに注意してください。それはあなたに任せます;)
また、entries.count == keys.count と仮定していることにも注意してください。

- (void)exportCSV {    
    NSArray *keys = @[@"T", @"R", @"RTT"];
    NSArray *entries = @[@"-329180696", @"1243918297", @"-998693494"];
    NSMutableString *csv = [[NSMutableString alloc] initWithCapacity:0];
    for (int i = 0; i < entries.count; i++) {
        [csv appendFormat:@"%@;%@\n", keys[i], entries[i]];
    }
}

出力:

T;-329180696
R;1243918297
RTT;-998693494

于 2013-04-21T12:48:12.227 に答える