Платформа: iOS с TCP / IP-связью.
Ниже приведен пример моего входящего потока данных.
$ PLTIT, HV, 0,20, М, 0,00, Д, -58,70, D, 0,30, М * 71
$ PLTIT, HV, 1,90, М, 0,00, D, -8,30, D, 1,90, М * 41
Действительный фрейм сообщения выглядит так:
$PLTIT,HV,1.90,M,0.00,D,-8.30,D,1.90,M*41
Но могут быть моменты, когда я получаю это:
[time n+0] $PLTIT,HV,0.20,M,0.00,D,-58.70,D,0.30,M*71
[time n+1] $PLTIT,HV,1.90,M,
[time n+2] 0.00,D,-8.30,D,1.90
[time n+3] ,M*41
[time n+4] $PLTIT,HV,0.20,M,0.00,D,-58.70,D,0.30,M*71
[time n+5] $PLTIT,HV,0.20,M,
[time n+6] 0.00,D,-58.70,D,0.30,M*71
[time n+7] $PLTIT,HV,0.20,M,0.00,D,-58.70,D,0.30,M*71
[time n+8] $PLTIT,HV,0.20,M,0.00,D,-58.70,D,0.30,M*71
В результате получается разбитый фрейм сообщения посередине.
Какие объекты / контейнеры я могу использовать под iOS, чтобы я мог правильно собрать все байты данных для анализа и не потерять биты из-за некоторой прерывистой связи или оборудования?