0

我一直在寻找一个关于编码一组整数和字符串的好教程,将它们包装在一个数组中,然后使用 NSKeyed 或 NSUnkeyed 存档器将其存档(最终然后放入一个 NSData 对象并通过 Wi-菲)。

例如,我有 3 个整数和 3 个字符串称为

整数 1 整数 2 整数 3 字符串 1 字符串 2 字符串 3

谁能给我提供示例代码,或者一个包含如何做到这一点的示例的好教程的链接?包括我需要对所有对象进行编码的方法,因为我仍然不确定在尝试将这些编码项目包装到数组中然后存档它们时如何实现这一点。

我已经阅读了苹果网站上的 Archives and Serializations Programming Guide ,当放在试图将这一切包装在一个数组中然后存档的上下文中,它并不是很有启发性。

如果我也不需要传输字符串,我很想创建一个 CFSwappedFloat32 的 ala GKRocket 数据包,但字符串是非常完整的。

谢谢

4

1 回答 1

0

您能否更具体地说明您遇到问题的地方?您需要做的就是创建一个数据对象和一个归档器,然后开始归档。完成后调用 -finishEncoding。

让我们编码一些银行账户信息:

const NSString *AccountHolderKey = @"account_holder";
const NSString *AccountNumberKey = @"account_number";
const NSString *AccountBalanceKey = @"account_balance";

//...

NSString *accountHolder = @"Johnny Appleseed";
int accountNumber = 12345;
int balance = 1250;

NSMutableData *archivedData = [NSMutableData data];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];

[archiver encodeObject:accountHolder forKey:AccountHolderKey];
[archiver encodeInt:accountNumber forKey:AccountNumberKey];
[archiver encodeInt:balance forKey:AccountBalanceKey];

[archiver finishEncoding];
[archiver release];

// now you can do what you like with archivedData
于 2011-04-27T04:03:05.117 回答