IOS学習——json回転Byte[]変換
1283 ワード
もう一つのプロジェクトが终わりますハハハ、久しぶりに师长と一绪にreviewコード、この1篇は番外编で、OCの中のjsonがByte[]に転化して送信したことを话します.
このプロジェクトでは、iphoneとサーバのtcp接続を実現し、jsonデータを送信する必要があります.Byte[]としてjsonデータを送信し、最初の4バイトはjsonデータ長を保存します.
では、まずOCのjsonデータ表示について説明します.
ここでの手順は,OCオブジェクトをjsonオブジェクト進流に変換し,次にByte配列に変換することである.もちろん、ここではインタラクティブなニーズが完全に実現されていません.次に、長さのByte[]を取得します.
最後のステップ、マージ
これで必要なByte[]resultが得られます
ここまでです、私は菜鳥です、よろしくお願いします、DRW
このプロジェクトでは、iphoneとサーバのtcp接続を実現し、jsonデータを送信する必要があります.Byte[]としてjsonデータを送信し、最初の4バイトはjsonデータ長を保存します.
では、まずOCのjsonデータ表示について説明します.
NSDictionary *dictM = @{
@"reqtype":@"login",
@"password":@"121",
@"username":@"an",
};
NSData *json = [NSJSONSerialization dataWithJSONObject:dictM options:kNilOptions error:nil];
Byte *jsonbyte = (Byte *)[json bytes];
ここでの手順は,OCオブジェクトをjsonオブジェクト進流に変換し,次にByte配列に変換することである.もちろん、ここではインタラクティブなニーズが完全に実現されていません.次に、長さのByte[]を取得します.
Byte lenByte[4];
int jsonLen=[json length];
lenByte[0] =(Byte) ((jsonLen>>24) & 0xFF);
lenByte[1] =(Byte) ((jsonLen>>16) & 0xFF);
lenByte[2] =(Byte) ((jsonLen>>8) & 0xFF);
lenByte[3] =(Byte) (jsonLen & 0xFF);
最後のステップ、マージ
Byte result[4+jsonLen];
for(int i=0;i<4;i++){//
result[i]=lenByte[i];
}
for(int i=4;i
これで必要なByte[]resultが得られます
ここまでです、私は菜鳥です、よろしくお願いします、DRW