Swift les structures de NSData et à l'arrière

J'ai une structure contenant une structure et une NSObject que je veux pour sérialiser dans un NSData objet:

struct Packet {
  var name: String
  var index: Int
  var numberOfPackets: Int
  var data: NSData
}

var thePacket = Packet(name: name, index: i, numberOfPackets: numberOfPackets, data: packetData)

Comment puis-je mieux sérialiser le Paquet dans un NSData, et comment puis-je mieux de le désérialiser?

À l'aide de

var bufferData = NSData(bytes: & thePacket, length: sizeof(Packet))

de seulement me donne les pointeurs de nom et de données. J'ai été d'explorer NSKeyedArchiver, mais je vais avoir à faire de Paquets d'un objet, et je préfère le garder un struct.

Acclamations

Nik

Cela peut être utile: github.com/x43x61x69/Struct-to-NSData-and-Back-Examples
Malheureusement non, il a un bug où il n'est pas de sauver la Chaîne! mais l'enregistrement de l'adresse de mémoire. Comme il le relit et des références, la chaîne est encore en mémoire. Mais il n'a jamais réellement enregistre le contenu de la Chaîne!
Ce à propos de cette méthode: gist.github.com/nubbel/5b0a5cb2bf6a2e353061 ?

OriginalL'auteur niklassaers | 2015-03-07