簡體   English   中英

解析ios6中的csv

[英]parse csv in ios6

我已經嘗試過這個方法來解析csv並且我得到了值但是如果任何字段是雙引號“”並且在“45,34,555”之間有一個逗號,那么它在3個字段中分隔它只是一個字段的值。如何我修改下面的代碼以獲得所需的結果。

 NSMutableArray *contentArray = [NSMutableArray array];
    NSString *filePath = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"csv"];


    NSError*  error;
    NSString* Data = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:&error ];


    if (Data)
    {
        NSArray *myText = [Data componentsSeparatedByString:@","];
        NSInteger idx;
        for (idx = 0; idx < myText.count; idx++) {
            NSString *data =[myText objectAtIndex:idx];
            NSLog(@"%@", data);
            id x = [NSNumber numberWithFloat:0+idx*0.002777778];
            id y = [NSDecimalNumber decimalNumberWithString:data];
            [contentArray addObject:
             [NSMutableDictionary dictionaryWithObjectsAndKeys:x, @"x", y, @"y",nil]];
        }
        self.dataForPlot = contentArray;

    }

您應該為此目的查看NSScanner。 您需要檢測是否獲得雙引號,如果是,則掃描直到結束引號並將其視為單個單位。 如果你得到一個冒號,那么你知道你有下一列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM