こんにちは私は、ネットワーク経由でサーバーに送信したいパケットを作成しようとしていますが、私のメソッドの最後に計算する必要がある長さの識別子が欠落していますパケットに追加します。nsmutabledataを操作する
この
- 大手値識別子(UInt16型)
- コンテンツサイズ(UInt32型)
- パケットの内容(文字列)
現在、私の方法のようなものに見えるように、パケット構造がありますこの
- (NSMutableData *) addRegCode
{
//Supply some default string for testing
NSString *regCode = [[NSString alloc] initWithString:@"abcd1"];
//create NSData object
NSData *registrationCodeData = [regCode dataUsingEncoding:NSUTF8StringEncoding];
NSMutableData * RegistrationCodeMutableData = [[NSMutableData alloc] init]; //send this object
//create leading value
UInt16 leadingValue = 8;
NSData * leadingValueData = [[NSData alloc] initWithBytes:&leadingValue length:sizeof(leadingValue)];
//append data to mutableData
[RegistrationCodeMutableData appendData:leadingValueData];
[RegistrationCodeMutableData appendData:registrationCodeData];
return RegistrationCodeMutableData;
}
私は」:長さ:私が知りたいのですが何
がregistrationCodeDataのサイズを計算し、その後、私はleadingValueData & registrationCodeDataを追加する場所の間
それを追加する方法である私はdataWithBytesを使用する必要があると思いますこれを使う方法が100%分からない
私はこれを持っています** NSData * registrationCodeSize = [NSData dataWithBytes:registrationCodeData length:???]; **しかし、長さの疑問符に何を入れるべきかわかりません。 –