Json 响应 iOS 添加到数组中

Json response iOS to add in array

this link 中,我的 JSON 响应必须显示本地时间、高度和每个日期的类型。

"Tide": {
"dataPoints": [
  {
    **"Localtime": "2016-12-09 12:00:00",**
    "time": 1481270400,
    "type": "NORMAL",
    "utctime": "December 09, 2016 08:00:00",
    "Rawtime": "December 09, 2016 00:00:00",
    "height": 1.314371
  },
  {
    "Localtime": "2016-12-09 01:00:00",
    "time": 1481274000,
    "type": "NORMAL",
    "utctime": "December 09, 2016 09:00:00",
    "Rawtime": "December 09, 2016 01:00:00",
    "height": 1.725071
  },
  {
    "Localtime": "2016-12-09 02:00:00",
    "time": 1481277600,
    "type": "NORMAL",
    "utctime": "December 09, 2016 10:00:00",
    "Rawtime": "December 09, 2016 02:00:00",
    "height": 2.540107
  },
  {
    "Localtime": "2016-12-09 03:00:00",
    "time": 1481281200,
    "type": "NORMAL",
    "utctime": "December 09, 2016 11:00:00",
    "Rawtime": "December 09, 2016 03:00:00",
    "height": 3.602393
  },
  {
    "Localtime": "2016-12-09 04:00:00",
    "time": 1481284800,
    "type": "NORMAL",
    "utctime": "December 09, 2016 12:00:00",
    "Rawtime": "December 09, 2016 04:00:00",
    "height": 4.701366
  },
  {
    "Localtime": "2016-12-09 05:00:00",
    "time": 1481288400,
    "type": "NORMAL",
    "utctime": "December 09, 2016 13:00:00",
    "Rawtime": "December 09, 2016 05:00:00",
    "height": 5.60834
  },
  {
    "Localtime": "2016-12-09 06:00:00",
    "time": 1481292000,
    "type": "NORMAL",
    "utctime": "December 09, 2016 14:00:00",
    "Rawtime": "December 09, 2016 06:00:00",
    "height": 6.114084
  },
  {
    "Localtime": "2016-12-09 06:26:09",
    "time": 1481293569,
    "type": "High",
    "utctime": "December 09, 2016 14:26:09",
    "Rawtime": "December 09, 2016 06:26:09",
    "height": 6.17
  },
  {
    "Localtime": "2016-12-09 07:00:00",
    "time": 1481295600,
    "type": "NORMAL",
    "utctime": "December 09, 2016 15:00:00",
    "Rawtime": "December 09, 2016 07:00:00",
    "height": 6.074992
  },
  {
    "Localtime": "2016-12-09 07:14:14",
    "time": 1481296454,
    "type": "Sunrise",
    "utctime": "December 09, 2016 15:14:14",
    "Rawtime": "December 09, 2016 07:14:14",
    "height": 0
  },
  {
    "Localtime": "2016-12-09 08:00:00",
    "time": 1481299200,
    "type": "NORMAL",
    "utctime": "December 09, 2016 16:00:00",
    "Rawtime": "December 09, 2016 08:00:00",
    "height": 5.462676
  },
  {
    "Localtime": "2016-12-09 09:00:00",
    "time": 1481302800,
    "type": "NORMAL",
    "utctime": "December 09, 2016 17:00:00",
    "Rawtime": "December 09, 2016 09:00:00",
    "height": 4.394475
  },
  {
    "Localtime": "2016-12-09 10:00:00",
    "time": 1481306400,
    "type": "NORMAL",
    "utctime": "December 09, 2016 18:00:00",
    "Rawtime": "December 09, 2016 10:00:00",
    "height": 3.11812
  },
  {
    "Localtime": "2016-12-09 11:00:00",
    "time": 1481310000,
    "type": "NORMAL",
    "utctime": "December 09, 2016 19:00:00",
    "Rawtime": "December 09, 2016 11:00:00",
    "height": 1.942714
  },
  {
    "Localtime": "2016-12-09 12:00:00",
    "time": 1481313600,
    "type": "NORMAL",
    "utctime": "December 09, 2016 20:00:00",
    "Rawtime": "December 09, 2016 12:00:00",
    "height": 1.140244
  },
  {
    "Localtime": "2016-12-09 01:00:00",
    "time": 1481317200,
    "type": "NORMAL",
    "utctime": "December 09, 2016 21:00:00",
    "Rawtime": "December 09, 2016 13:00:00",
    "height": 0.862646
  },
  {
    "Localtime": "2016-12-09 01:00:30",
    "time": 1481317230,
    "type": "Low",
    "utctime": "December 09, 2016 21:00:30",
    "Rawtime": "December 09, 2016 13:00:30",
    "height": 0.86
  },
  {
    "Localtime": "2016-12-09 02:00:00",
    "time": 1481320800,
    "type": "NORMAL",
    "utctime": "December 09, 2016 22:00:00",
    "Rawtime": "December 09, 2016 14:00:00",
    "height": 1.111124
  },
  {
    "Localtime": "2016-12-09 03:00:00",
    "time": 1481324400,
    "type": "NORMAL",
    "utctime": "December 09, 2016 23:00:00",
    "Rawtime": "December 09, 2016 15:00:00",
    "height": 1.761986
  },
  {
    "Localtime": "2016-12-09 04:00:00",
    "time": 1481328000,
    "type": "NORMAL",
    "utctime": "December 10, 2016 00:00:00",
    "Rawtime": "December 09, 2016 16:00:00",
    "height": 2.621853
  },
  {
    "Localtime": "2016-12-09 04:51:06",
    "time": 1481331066,
    "type": "Sunset",
    "utctime": "December 10, 2016 00:51:06",
    "Rawtime": "December 09, 2016 16:51:06",
    "height": 0
  },
  {
    "Localtime": "2016-12-09 05:00:00",
    "time": 1481331600,
    "type": "NORMAL",
    "utctime": "December 10, 2016 01:00:00",
    "Rawtime": "December 09, 2016 17:00:00",
    "height": 3.478611
  },
  {
    "Localtime": "2016-12-09 06:00:00",
    "time": 1481335200,
    "type": "NORMAL",
    "utctime": "December 10, 2016 02:00:00",
    "Rawtime": "December 09, 2016 18:00:00",
    "height": 4.134485
  },
  {
    "Localtime": "2016-12-09 07:00:00",
    "time": 1481338800,
    "type": "NORMAL",
    "utctime": "December 10, 2016 03:00:00",
    "Rawtime": "December 09, 2016 19:00:00",
    "height": 4.432216
  },
  {
    "Localtime": "2016-12-09 07:11:15",
    "time": 1481339475,
    "type": "High",
    "utctime": "December 10, 2016 03:11:15",
    "Rawtime": "December 09, 2016 19:11:15",
    "height": 4.44
  },
  {
    "Localtime": "2016-12-09 08:00:00",
    "time": 1481342400,
    "type": "NORMAL",
    "utctime": "December 10, 2016 04:00:00",
    "Rawtime": "December 09, 2016 20:00:00",
    "height": 4.289772
  },
  {
    "Localtime": "2016-12-09 09:00:00",
    "time": 1481346000,
    "type": "NORMAL",
    "utctime": "December 10, 2016 05:00:00",
    "Rawtime": "December 09, 2016 21:00:00",
    "height": 3.739199
  },
  {
    "Localtime": "2016-12-09 10:00:00",
    "time": 1481349600,
    "type": "NORMAL",
    "utctime": "December 10, 2016 06:00:00",
    "Rawtime": "December 09, 2016 22:00:00",
    "height": 2.942309
  },
  {
    "Localtime": "2016-12-09 11:00:00",
    "time": 1481353200,
    "type": "NORMAL",
    "utctime": "December 10, 2016 07:00:00",
    "Rawtime": "December 09, 2016 23:00:00",
    "height": 2.156115
  },
  {
    "Localtime": "2016-12-10 12:00:00",
    "time": 1481356800,
    "type": "NORMAL",
    "utctime": "December 10, 2016 08:00:00",
    "Rawtime": "December 10, 2016 00:00:00",
    "height": 1.649912
  },
  {
    **"Localtime": "2016-12-10 12:34:41",**
    "time": 1481358881,
    "type": "Low",
    "utctime": "December 10, 2016 08:34:41",
    "Rawtime": "December 10, 2016 00:34:41",
    "height": 1.56
  },
  {
    "Localtime": "2016-12-10 01:00:00",
    "time": 1481360400,
    "type": "NORMAL",
    "utctime": "December 10, 2016 09:00:00",
    "Rawtime": "December 10, 2016 01:00:00",
    "height": 1.610976
  },
  {
    "Localtime": "2016-12-10 02:00:00",
    "time": 1481364000,
    "type": "NORMAL",
    "utctime": "December 10, 2016 10:00:00",
    "Rawtime": "December 10, 2016 02:00:00",
    "height": 2.086316
  },
  {
    "Localtime": "2016-12-10 03:00:00",
    "time": 1481367600,
    "type": "NORMAL",
    "utctime": "December 10, 2016 11:00:00",
    "Rawtime": "December 10, 2016 03:00:00",
    "height": 2.983297
  },
  {
    "Localtime": "2016-12-10 04:00:00",
    "time": 1481371200,
    "type": "NORMAL",
    "utctime": "December 10, 2016 12:00:00",
    "Rawtime": "December 10, 2016 04:00:00",
    "height": 4.113031
  },
  {
    "Localtime": "2016-12-10 05:00:00",
    "time": 1481374800,
    "type": "NORMAL",
    "utctime": "December 10, 2016 13:00:00",
    "Rawtime": "December 10, 2016 05:00:00",
    "height": 5.240836
  },
  {
    "Localtime": "2016-12-10 06:00:00",
    "time": 1481378400,
    "type": "NORMAL",
    "utctime": "December 10, 2016 14:00:00",
    "Rawtime": "December 10, 2016 06:00:00",
    "height": 6.122298
  },
  {
    "Localtime": "2016-12-10 07:00:00",
    "time": 1481382000,
    "type": "NORMAL",
    "utctime": "December 10, 2016 15:00:00",
    "Rawtime": "December 10, 2016 07:00:00",
    "height": 6.533787
  },
  {
    "Localtime": "2016-12-10 07:10:54",
    "time": 1481382654,
    "type": "High",
    "utctime": "December 10, 2016 15:10:54",
    "Rawtime": "December 10, 2016 07:10:54",
    "height": 6.54
  },
  {
    "Localtime": "2016-12-10 07:15:15",
    "time": 1481382915,
    "type": "Sunrise",
    "utctime": "December 10, 2016 15:15:15",
    "Rawtime": "December 10, 2016 07:15:15",
    "height": 0
  },
  {
    "Localtime": "2016-12-10 08:00:00",
    "time": 1481385600,
    "type": "NORMAL",
    "utctime": "December 10, 2016 16:00:00",
    "Rawtime": "December 10, 2016 08:00:00",
    "height": 6.318964
  },
  {
    "Localtime": "2016-12-10 09:00:00",
    "time": 1481389200,
    "type": "NORMAL",
    "utctime": "December 10, 2016 17:00:00",
    "Rawtime": "December 10, 2016 09:00:00",
    "height": 5.452142
  },
  {
    "Localtime": "2016-12-10 10:00:00",
    "time": 1481392800,
    "type": "NORMAL",
    "utctime": "December 10, 2016 18:00:00",
    "Rawtime": "December 10, 2016 10:00:00",
    "height": 4.084528
  },
  {
    "Localtime": "2016-12-10 11:00:00",
    "time": 1481396400,
    "type": "NORMAL",
    "utctime": "December 10, 2016 19:00:00",
    "Rawtime": "December 10, 2016 11:00:00",
    "height": 2.527734
  },
  {
    "Localtime": "2016-12-10 12:00:00",
    "time": 1481400000,
    "type": "NORMAL",
    "utctime": "December 10, 2016 20:00:00",
    "Rawtime": "December 10, 2016 12:00:00",
    "height": 1.159965
  },
  {
    "Localtime": "2016-12-10 01:00:00",
    "time": 1481403600,
    "type": "NORMAL",
    "utctime": "December 10, 2016 21:00:00",
    "Rawtime": "December 10, 2016 13:00:00",
    "height": 0.293658
  },
  {
    "Localtime": "2016-12-10 01:50:12",
    "time": 1481406612,
    "type": "Low",
    "utctime": "December 10, 2016 21:50:12",
    "Rawtime": "December 10, 2016 13:50:12",
    "height": 0.07
  },
  {
    "Localtime": "2016-12-10 02:00:00",
    "time": 1481407200,
    "type": "NORMAL",
    "utctime": "December 10, 2016 22:00:00",
    "Rawtime": "December 10, 2016 14:00:00",
    "height": 0.074574
  },
  {
    "Localtime": "2016-12-10 03:00:00",
    "time": 1481410800,
    "type": "NORMAL",
    "utctime": "December 10, 2016 23:00:00",
    "Rawtime": "December 10, 2016 15:00:00",
    "height": 0.462501
  },
  {
    "Localtime": "2016-12-10 04:00:00",
    "time": 1481414400,
    "type": "NORMAL",
    "utctime": "December 11, 2016 00:00:00",
    "Rawtime": "December 10, 2016 16:00:00",
    "height": 1.287361
  },
  {
    "Localtime": "2016-12-10 04:51:14",
    "time": 1481417474,
    "type": "Sunset",
    "utctime": "December 11, 2016 00:51:14",
    "Rawtime": "December 10, 2016 16:51:14",
    "height": 0
  },
  {
    "Localtime": "2016-12-10 05:00:00",
    "time": 1481418000,
    "type": "NORMAL",
    "utctime": "December 11, 2016 01:00:00",
    "Rawtime": "December 10, 2016 17:00:00",
    "height": 2.328355
  },
  {
    "Localtime": "2016-12-10 06:00:00",
    "time": 1481421600,
    "type": "NORMAL",
    "utctime": "December 11, 2016 02:00:00",
    "Rawtime": "December 10, 2016 18:00:00",
    "height": 3.365122
  },
  {
    "Localtime": "2016-12-10 07:00:00",
    "time": 1481425200,
    "type": "NORMAL",
    "utctime": "December 11, 2016 03:00:00",
    "Rawtime": "December 10, 2016 19:00:00",
    "height": 4.192768
  },
  {
    "Localtime": "2016-12-10 08:00:00",
    "time": 1481428800,
    "type": "NORMAL",
    "utctime": "December 11, 2016 04:00:00",
    "Rawtime": "December 10, 2016 20:00:00",
    "height": 4.633698
  },
  {
    "Localtime": "2016-12-10 08:23:35",
    "time": 1481430215,
    "type": "High",
    "utctime": "December 11, 2016 04:23:35",
    "Rawtime": "December 10, 2016 20:23:35",
    "height": 4.67
  },
  {
    "Localtime": "2016-12-10 09:00:00",
    "time": 1481432400,
    "type": "NORMAL",
    "utctime": "December 11, 2016 05:00:00",
    "Rawtime": "December 10, 2016 21:00:00",
    "height": 4.578441
  },
  {
    "Localtime": "2016-12-10 10:00:00",
    "time": 1481436000,
    "type": "NORMAL",
    "utctime": "December 11, 2016 06:00:00",
    "Rawtime": "December 10, 2016 22:00:00",
    "height": 4.046519
  },
  {
    "Localtime": "2016-12-10 11:00:00",
    "time": 1481439600,
    "type": "NORMAL",
    "utctime": "December 11, 2016 07:00:00",
    "Rawtime": "December 10, 2016 23:00:00",
    "height": 3.218655
  },
  {
    **"Localtime": "2016-12-11 12:00:00",**
    "time": 1481443200,
    "type": "NORMAL",
    "utctime": "December 11, 2016 08:00:00",
    "Rawtime": "December 11, 2016 00:00:00",
    "height": 2.395649
  },
  {
    "Localtime": "2016-12-11 01:00:00",
    "time": 1481446800,
    "type": "NORMAL",
    "utctime": "December 11, 2016 09:00:00",
    "Rawtime": "December 11, 2016 01:00:00",
    "height": 1.888912
  },
  {
    "Localtime": "2016-12-11 01:28:53",
    "time": 1481448533,
    "type": "Low",
    "utctime": "December 11, 2016 09:28:53",
    "Rawtime": "December 11, 2016 01:28:53",
    "height": 1.82
  },
  {
    "Localtime": "2016-12-11 02:00:00",
    "time": 1481450400,
    "type": "NORMAL",
    "utctime": "December 11, 2016 10:00:00",
    "Rawtime": "December 11, 2016 02:00:00",
    "height": 1.900692
  },
  {
    "Localtime": "2016-12-11 03:00:00",
    "time": 1481454000,
    "type": "NORMAL",
    "utctime": "December 11, 2016 11:00:00",
    "Rawtime": "December 11, 2016 03:00:00",
    "height": 2.460855
  },
  {
    "Localtime": "2016-12-11 04:00:00",
    "time": 1481457600,
    "type": "NORMAL",
    "utctime": "December 11, 2016 12:00:00",
    "Rawtime": "December 11, 2016 04:00:00",
    "height": 3.443584
  },
  {
    "Localtime": "2016-12-11 05:00:00",
    "time": 1481461200,
    "type": "NORMAL",
    "utctime": "December 11, 2016 13:00:00",
    "Rawtime": "December 11, 2016 05:00:00",
    "height": 4.630794
  },
  {
    "Localtime": "2016-12-11 06:00:00",
    "time": 1481464800,
    "type": "NORMAL",
    "utctime": "December 11, 2016 14:00:00",
    "Rawtime": "December 11, 2016 06:00:00",
    "height": 5.769447
  },
  {
    "Localtime": "2016-12-11 07:00:00",
    "time": 1481468400,
    "type": "NORMAL",
    "utctime": "December 11, 2016 15:00:00",
    "Rawtime": "December 11, 2016 07:00:00",
    "height": 6.600818
  },
  {
    "Localtime": "2016-12-11 07:15:47",
    "time": 1481469347,
    "type": "Sunrise",
    "utctime": "December 11, 2016 15:15:47",
    "Rawtime": "December 11, 2016 07:15:47",
    "height": 0
  },
  {
    "Localtime": "2016-12-11 07:55:45",
    "time": 1481471745,
    "type": "High",
    "utctime": "December 11, 2016 15:55:45",
    "Rawtime": "December 11, 2016 07:55:45",
    "height": 6.89
  },
  {
    "Localtime": "2016-12-11 08:00:00",
    "time": 1481472000,
    "type": "NORMAL",
    "utctime": "December 11, 2016 16:00:00",
    "Rawtime": "December 11, 2016 08:00:00",
    "height": 6.885445
  },
  {
    "Localtime": "2016-12-11 09:00:00",
    "time": 1481475600,
    "type": "NORMAL",
    "utctime": "December 11, 2016 17:00:00",
    "Rawtime": "December 11, 2016 09:00:00",
    "height": 6.458388
  },
  {
    "Localtime": "2016-12-11 10:00:00",
    "time": 1481479200,
    "type": "NORMAL",
    "utctime": "December 11, 2016 18:00:00",
    "Rawtime": "December 11, 2016 10:00:00",
    "height": 5.311423
  },
  {
    "Localtime": "2016-12-11 11:00:00",
    "time": 1481482800,
    "type": "NORMAL",
    "utctime": "December 11, 2016 19:00:00",
    "Rawtime": "December 11, 2016 11:00:00",
    "height": 3.648872
  },
  {
    "Localtime": "2016-12-11 12:00:00",
    "time": 1481486400,
    "type": "NORMAL",
    "utctime": "December 11, 2016 20:00:00",
    "Rawtime": "December 11, 2016 12:00:00",
    "height": 1.85591
  },
  {
    "Localtime": "2016-12-11 01:00:00",
    "time": 1481490000,
    "type": "NORMAL",
    "utctime": "December 11, 2016 21:00:00",
    "Rawtime": "December 11, 2016 13:00:00",
    "height": 0.370124
  },
  {
    "Localtime": "2016-12-11 02:00:00",
    "time": 1481493600,
    "type": "NORMAL",
    "utctime": "December 11, 2016 22:00:00",
    "Rawtime": "December 11, 2016 14:00:00",
    "height": -0.4807
  },
  {
    "Localtime": "2016-12-11 02:38:11",
    "time": 1481495891,
    "type": "Low",
    "utctime": "December 11, 2016 22:38:11",
    "Rawtime": "December 11, 2016 14:38:11",
    "height": -0.63
  },
  {
    "Localtime": "2016-12-11 03:00:00",
    "time": 1481497200,
    "type": "NORMAL",
    "utctime": "December 11, 2016 23:00:00",
    "Rawtime": "December 11, 2016 15:00:00",
    "height": -0.581912
  },
  {
    "Localtime": "2016-12-11 04:00:00",
    "time": 1481500800,
    "type": "NORMAL",
    "utctime": "December 12, 2016 00:00:00",
    "Rawtime": "December 11, 2016 16:00:00",
    "height": -0.025588
  },
  {
    "Localtime": "2016-12-11 04:51:25",
    "time": 1481503885,
    "type": "Sunset",
    "utctime": "December 12, 2016 00:51:25",
    "Rawtime": "December 11, 2016 16:51:25",
    "height": 0
  },
  {
    "Localtime": "2016-12-11 05:00:00",
    "time": 1481504400,
    "type": "NORMAL",
    "utctime": "December 12, 2016 01:00:00",
    "Rawtime": "December 11, 2016 17:00:00",
    "height": 0.977441
  },
  {
    "Localtime": "2016-12-11 06:00:00",
    "time": 1481508000,
    "type": "NORMAL",
    "utctime": "December 12, 2016 02:00:00",
    "Rawtime": "December 11, 2016 18:00:00",
    "height": 2.189733
  },
  {
    "Localtime": "2016-12-11 07:00:00",
    "time": 1481511600,
    "type": "NORMAL",
    "utctime": "December 12, 2016 03:00:00",
    "Rawtime": "December 11, 2016 19:00:00",
    "height": 3.386593
  },
  {
    "Localtime": "2016-12-11 08:00:00",
    "time": 1481515200,
    "type": "NORMAL",
    "utctime": "December 12, 2016 04:00:00",
    "Rawtime": "December 11, 2016 20:00:00",
    "height": 4.351603
  },
  {
    "Localtime": "2016-12-11 09:00:00",
    "time": 1481518800,
    "type": "NORMAL",
    "utctime": "December 12, 2016 05:00:00",
    "Rawtime": "December 11, 2016 21:00:00",
    "height": 4.883885
  }
  // etc
]

我只想显示每个日期的第一条记录。 那么,有人可以帮助我吗?

我必须在标签中显示的粗体文本

如果您只想要特定日期的第一个对象,您可以这样尝试。

NSArray *dataPoints = [tideDic objectForKey:@"dataPoints"];
NSMutableArray *firstObjects = [[NSMutableArray alloc] init];
NSMutableArray *dayArray = [[NSMutableArray alloc] init];

for (NSDictionary *dic in dataPoints) {
    NSString *locatationTime = [dic objectForKey:@"Localtime"];
    NSString *dateOnly = [[locatationTime componentsSeparatedByString:@" "] firstObject];
    if (![dayArray containsObject:dateOnly]) {
        [dayArray addObject:dateOnly];
        [firstObjects addObject:dic];
    }
}

试试这个:

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"yyyy-mm-dd hh:mm:ss"];// change ass per your format
    [times sortUsingComparator:^NSComparisonResult(NSString* obj1, NSString *obj2) {
        NSDate *firstDate = [formatter dateFromString:obj1];
        NSDate *secondDate = [formatter dateFromString:obj2];
        return [firstDate compare:secondDate];
    }];

来自 :