早上好,
我正在从连接到 iPad 的串行设备中检索字节流。连接后,提供的 SDK 将使用已转发的字节调用委托方法。
串口设备通过 SDK 转发的读数格式如下:
!X1:000.0;
一旦连接到串行设备,委托的方法将立即开始接收数据 - 这可能处于各种完成状态,即
:000.00;
我需要做的是建立一种具体的方法来拆分从串行设备返回的读数,以便我可以操作数据。
一些尝试过的选项是:
只需将接收到的字符串连接一段固定的时间,然后在“;”上拆分 NSString 特点。虽然这有点低效,并且不允许我动态操作数据
-(void)receivingDelegateMethod:(NSString *)aString {
if(counter < 60){
[self.PropertyString stringByAppendingString:aString];
}else{
NSArray *readings = [self.PropertyString componentsSeparatedByString: @";"];
}
}
通过寻找“!”确定起点 字符,然后将生成的子字符串附加到 NSString 属性。之前对委托方法的所有调用都将附加到此属性,然后删除前 10 个字符。
我知道还有其他选项,例如 NSScanners 和 RegEx,但我想在浪费更多时间使用不同方法之前获得社区的意见。
谢谢