Objective-C で NSOutputStream を使用して小さなパッケージを送信したいと考えています。
このユーザーと同じ問題があります: Cocoa NSOutputStream send to a connection
答えは、文字列の末尾に「\n」を追加するだけです。私はそうしようとしましたが、うまくいきません。
あなたの誰かが私の問題を見ていますか?エンコーディングが問題である可能性がありますか?
// Append the line break
theMessage = [theMessage stringByAppendingString:@"\n"];
// Create the data object
NSData *d = [theMessage dataUsingEncoding:NSASCIIStringEncoding];
// Send the message
[self.outputStream write:[d bytes] maxLength:[d length]]
編集: NSNetservice-Object からこのメソッドを呼び出して、出力ストリームを取得します。
CFStreamCreatePairWithSocketToHost(NULL, url, port, &inputStream, &outputStream);
Edit2:問題は、大量のメッセージを非常に高速に送信すると、サーバーがメッセージを2つに区切られたものではなく、1つの文字列として受信することです