2012-09-19 228 views
2

我有一個txt文件(字符串),元素用「;」分隔。我讀這到一個MSMutable陣列。我需要在日期之後在現場排序。它將是整數數據。如何從字符串中抓取該字段以進行分類。我搜索了幾天,找不到對此的參考。排序字符串數組

2012年9月17日; 5; -54.74 2012年9月17日; 76; 6.53 2012年9月17日; 66; 6.53 2012年9月17日; 69; 6.53 2012年9月17日; 60; 6.53 2012年9月17日; 96; 6.53 2012年9月17日; 86; 6.53 2012年9月17日; 77; 6.53

謝謝,

羅恩

回答

1

您可以使用sortUsingComparator:方法,如下所示:

[array sortUsingComparator: ^(id lhs, id rhs) { 
    // Get the string between the first and the second semicolons: 
    NSString *obj1 = [[lhs componentsSeparatedByString:@";"] objectAtIndex:1]; 
    NSString *obj2 = [[rhs componentsSeparatedByString:@";"] objectAtIndex:1]; 
    // Compare the two strings as integers: 
    if ([obj1 integerValue] > [obj2 integerValue]) { 
     return (NSComparisonResult)NSOrderedDescending; 
    } 
    if ([obj1 integerValue] < [obj2 integerValue]) { 
     return (NSComparisonResult)NSOrderedAscending; 
    } 
    return (NSComparisonResult)NSOrderedSame; 
}]; 
+0

謝謝,我是新手。讓我試一試 –

+0

這很好,但我如何排序日期字段。我無法讓它選擇日期對象 –

+1

@RonBledsoe'objectAtIndex:0'會給你日期字符串。解析它([鏈接](http://stackoverflow.com/q/4999396/335858))並比較它們的排序。 – dasblinkenlight