如何在升序中对对象的NSMutableArray排序,以及如何在iOS中更改DateFormat

如何在升序中对对象的NSMutableArray排序,以及如何在iOS中更改DateFormat,ios,objective-c,iphone,sorting,nsmutablearray,Ios,Objective C,Iphone,Sorting,Nsmutablearray,我是iOS的新手,我正在将我的应用程序与服务集成 和表单服务我得到了“日期”值,并且我将该日期值存储在**NSMutableArray**中,因此如何按升序排列我的数组列表请参见下面的内容 我如何更改下面的数组列表日期格式,如“2016年2月17日20:25”,请帮助我一些 我的阵列: 按升序排序NsmutableArray的代码: NSMutableArray *arr = @[@"02/17/2016", @"02/13/2016",

我是iOS的新手,我正在将我的应用程序与服务集成

和表单服务我得到了“日期”值,并且我将该日期值存储在
**NSMutableArray**
中,因此如何按升序排列我的数组列表请参见下面的内容

我如何更改下面的数组列表日期格式,如“2016年2月17日20:25”,请帮助我一些

我的阵列:
按升序排序NsmutableArray的代码:

NSMutableArray *arr = @[@"02/17/2016",
                        @"02/13/2016",
                        @"02/14/2016",
                        @"02/18/2016",
                        @"02/21/2016",
                        @"02/22/2016",
                        @"02/18/2016",
                        @"02/20/2016"].mutableCopy;

NSSortDescriptor* sortOrder = [NSSortDescriptor sortDescriptorWithKey: @"self" ascending: YES];
NSArray *arr1 =  [arr sortedArrayUsingDescriptors: [NSArray arrayWithObject: sortOrder]];
和输出:

(
"02/13/2016",
"02/14/2016",
"02/17/2016",
"02/18/2016",
"02/18/2016",
"02/20/2016",
"02/21/2016",
"02/22/2016"
)
更改日期格式的代码:

 NSString *dateString = @"11-13-2015";
 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
 [dateFormatter setDateFormat:@"MM-dd-yyyy"];
 NSDate *date = [dateFormatter dateFromString:dateString];

 // Convert date object into desired format
 [dateFormatter setDateFormat:@"dd MMM yyyy"];
 NSString *newDateString = [dateFormatter stringFromDate:date];

按升序排序NsmutableArray的代码:

NSMutableArray *arr = @[@"02/17/2016",
                        @"02/13/2016",
                        @"02/14/2016",
                        @"02/18/2016",
                        @"02/21/2016",
                        @"02/22/2016",
                        @"02/18/2016",
                        @"02/20/2016"].mutableCopy;

NSSortDescriptor* sortOrder = [NSSortDescriptor sortDescriptorWithKey: @"self" ascending: YES];
NSArray *arr1 =  [arr sortedArrayUsingDescriptors: [NSArray arrayWithObject: sortOrder]];
和输出:

(
"02/13/2016",
"02/14/2016",
"02/17/2016",
"02/18/2016",
"02/18/2016",
"02/20/2016",
"02/21/2016",
"02/22/2016"
)
更改日期格式的代码:

 NSString *dateString = @"11-13-2015";
 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
 [dateFormatter setDateFormat:@"MM-dd-yyyy"];
 NSDate *date = [dateFormatter dateFromString:dateString];

 // Convert date object into desired format
 [dateFormatter setDateFormat:@"dd MMM yyyy"];
 NSString *newDateString = [dateFormatter stringFromDate:date];
排序

 NSSortDescriptor* OrderBy = [NSSortDescriptor sortDescriptorWithKey: @"self" ascending: YES]; // for ascending use `YES`, for Descending USE `NO`
NSArray *finalArar =  [yourmutableArrayName sortedArrayUsingDescriptors: [NSArray arrayWithObject: OrderBy]];
    for (NSString *dte in finalArar)
    {
     NSDateFormatter *format = [[NSDateFormatter alloc] init];

     //your Date String is  02/17/2016
    [format setDateFormat:@"MM/dd/yyyy"];

    // for example like this 
    [format setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
   // or use this [format setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];
    NSDate *parsed = [format dateFromString:dte];
     //final   String is     02 Feb 2016
     [format setDateFormat:@"dd MMM yyyy"];
       NSString *newDateString = [format stringFromDate:parsed];
       NSLog(@"final date==%@",newDateString)
      }
更改日期格式

 NSSortDescriptor* OrderBy = [NSSortDescriptor sortDescriptorWithKey: @"self" ascending: YES]; // for ascending use `YES`, for Descending USE `NO`
NSArray *finalArar =  [yourmutableArrayName sortedArrayUsingDescriptors: [NSArray arrayWithObject: OrderBy]];
    for (NSString *dte in finalArar)
    {
     NSDateFormatter *format = [[NSDateFormatter alloc] init];

     //your Date String is  02/17/2016
    [format setDateFormat:@"MM/dd/yyyy"];

    // for example like this 
    [format setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
   // or use this [format setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];
    NSDate *parsed = [format dateFromString:dte];
     //final   String is     02 Feb 2016
     [format setDateFormat:@"dd MMM yyyy"];
       NSString *newDateString = [format stringFromDate:parsed];
       NSLog(@"final date==%@",newDateString)
      }
排序

 NSSortDescriptor* OrderBy = [NSSortDescriptor sortDescriptorWithKey: @"self" ascending: YES]; // for ascending use `YES`, for Descending USE `NO`
NSArray *finalArar =  [yourmutableArrayName sortedArrayUsingDescriptors: [NSArray arrayWithObject: OrderBy]];
    for (NSString *dte in finalArar)
    {
     NSDateFormatter *format = [[NSDateFormatter alloc] init];

     //your Date String is  02/17/2016
    [format setDateFormat:@"MM/dd/yyyy"];

    // for example like this 
    [format setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
   // or use this [format setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];
    NSDate *parsed = [format dateFromString:dte];
     //final   String is     02 Feb 2016
     [format setDateFormat:@"dd MMM yyyy"];
       NSString *newDateString = [format stringFromDate:parsed];
       NSLog(@"final date==%@",newDateString)
      }
更改日期格式

 NSSortDescriptor* OrderBy = [NSSortDescriptor sortDescriptorWithKey: @"self" ascending: YES]; // for ascending use `YES`, for Descending USE `NO`
NSArray *finalArar =  [yourmutableArrayName sortedArrayUsingDescriptors: [NSArray arrayWithObject: OrderBy]];
    for (NSString *dte in finalArar)
    {
     NSDateFormatter *format = [[NSDateFormatter alloc] init];

     //your Date String is  02/17/2016
    [format setDateFormat:@"MM/dd/yyyy"];

    // for example like this 
    [format setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
   // or use this [format setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];
    NSDate *parsed = [format dateFromString:dte];
     //final   String is     02 Feb 2016
     [format setDateFormat:@"dd MMM yyyy"];
       NSString *newDateString = [format stringFromDate:parsed];
       NSLog(@"final date==%@",newDateString)
      }

感谢您的回答,我想更改mate的日期,如“2016年2月17日”,我如何将2016年1月23日1830军事时间格式更改为常规时间格式兄弟-1830是什么?是时区吗?谢谢你的回答,我想更改mate的日期,如“2016年2月17日”,我如何将2016年1月23日1830军事时间格式更改为常规时间格式bro–1830是什么?是时区吗?您好,兄弟,我如何更改此2016年1月23日1830军事时间格式?与常规时间格式相同。设置您的时间格式,如
formatter.timezone=[NSTimeZone timeZoneForSecondsFromGMT:0]
[格式化程序设置时区:[NSTimeZone TimeZoneWithAbRevision:@“GMT”]如何在for循环中插入包含日期的时区格式请更新NSLog中的ur codeno bro null值(@“final date==%@”,newDateString)
[format setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]这是一个错误,没有它就可以正常工作。这意味着你可以在你需要的地方更新你的问题……你好,兄弟,我怎样才能将这个2016年1月23日1830军事时间格式更改为常规时间格式呢?兄弟,设置你的时间像
formatter.timeZone=[NSTimeZone timeZoneForSecondsFromGMT:0]
[格式化程序设置时区:[NSTimeZone TimeZoneWithAbRevision:@“GMT”]如何在for循环中插入包含日期的时区格式请更新NSLog中的ur codeno bro null值(@“final date==%@”,newDateString)
[format setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]这是一个错误,没有它就可以正常工作。这意味着你可以在你需要的地方更新你的问题。。。