私は NSInputstream から着信メッセージを受信し、それを UItableview で表示する必要がある宿題をやっています。宿。
誰にもアイデアはありますか????
例:
@abc:123:123:123:123@
@abc:123:123:123:123@
@abc:1:2:3@
最初の行は最初の行に出力されますが、2 行目には 3 行目も出力されます。文字列が "@" で始まり "@" で終わる場合、同じ行ではなく各行に書き込む形式を作成する方法を教えてください。
たくさんのフィルター メッセージを作成しましたが、失敗します
私のコード:
case NSStreamEventHasBytesAvailable:
if (theStream == inputStream) {
uint8_t buffer[1024];
int len;
while ([inputStream hasBytesAvailable]) {
len = [inputStream read:buffer maxLength:sizeof(buffer)];
if (len > 0) {
NSString *output = [[NSString alloc] initWithBytes:buffer length:len encoding:NSASCIIStringEncoding];
if (nil != output) {
NSLog(@"server said: %@", output);
}
}
}
}
break;
NSIndexPath *topIndexPath = [NSIndexPath indexPathForRow:messages.count-1 inSection:0];
[self.tView scrollToRowAtIndexPath:topIndexPath
atScrollPosition:UITableViewScrollPositionMiddle
animated:YES];
出力:
@abc:123:123:123:123@
@abc:123:123:123:123@ @abc:1:2:3@
しかし、私は期待しています:
@abc:123:123:123:123@
@abc:123:123:123:123@
@abc:1:2:3@
....文字列が「@」で始まり、「@」で終わる場合、次の行に書き込む必要があります...問題は、文字列が小さいため同じ行が必要なためですが、次の行にそれが必要な場合「@」で始まり「@」で終わる