외부 소스에서받은 NSData 스트림을 NSLogging하고 있는데, 어떤 이유로 그것이 40 문자 청크로 자꾸 자꾸 들어가고 40 문자가되면 새 라인으로갑니다. . 스트림을 파싱하고 특정 위치의 값을 선택하려고하므로 라인을 뛰어 넘는 큰 번거 로움이 있습니다. 아무도이 동작을 방지 할 수있는 방법을 알고 있습니까?NSData가 청크로 분할됩니다.
2013-07-17 14:44:32.638 Test App
[4041:907] data equals <3e2c042c 31333037 31373032 34302d30 372c0100>
2013-07-17 14:44:32.698 Test App
[4041:907] data equals <00000000 2c020000 0000002c 03000000 00002cff>
2013-07-17 14:44:32.758 Test App
[4041:907] data equals <00000000 00>
편집 : 여기 내 NSLog의 예입니다 관련 코드에 관해서는, 나는 제 3 자 BLE 라이브러리를 사용하고, 그래서 나는 그것을 많이 사용하지 않을 것입니다 생각. 이것은 기본적으로 관련 코드의 유일한 라인 : 나는 롭의 제안 탄을 준
NSData *data = [BLEdevice readReceivedBytes];
NSLog(@"data equals %@", data);
하고,이 결과였다 :
2013-07-17 15:21:35.399 Test App[4060:907] data equals <3e2c012c 31333037 31373033 32312d30 372cff00>
2013-07-17 15:21:35.401 Test App[4060:907] data length equals =20
2013-07-17 15:21:35.458 Test App[4060:907] data equals <00000000>
2013-07-17 15:21:35.460 Test App[4060:907] data length equals =4
는 것이 아니라, 모두 한 줄에 다시 스트리밍한다 최대 40 자. 어쩌면 그것은 BLE 일입니다.
관련 코드를 표시하면 도움이됩니다. – rmaddy
NSData 무엇? 당신은 어떻게 당신의 시내를 얻습니까? 버퍼 한도를 뒀습니까? 콜백 전화는 언제입니까? – Larme
@Larme 타사 BLE 장치입니다. 실제로 버퍼 제한을 두었습니다. 입력 및 출력은 각각 512입니다. – John