ninjaneer
ninjaneer

Reputation: 7031

Structs to NSData to Structs?

I have the following struct:

typedef enum
{
    kPacketTypeJoin = 1,
    kPacketTypeServerAcceptedJoin,
    kPacketTypeSelectedNumber,
} PacketTypes;    
typedef struct
{
    PacketTypes type;
    NSString *name;
} PacketJoin;

how would I convert a PacketJoin into NSData and back to PacketJoin again?

Upvotes: 24

Views: 14377

Answers (1)

Caleb
Caleb

Reputation: 124997

// make a NSData object
NSData *myData = [NSData dataWithBytes:&myPacketJoin length:sizeof(myPacketJoin)];

// make a new PacketJoin
PacketJoin newJoin;
[myData getBytes:&newJoin length:sizeof(newJoin)];

Upvotes: 41

Related Questions