我已经尝试了几个小时,我无法解决这个问题.
我正在制作一个可以保存未完成的国际象棋游戏的应用程序,所以我正在尝试将数组写入文件.
如果有意义的话,这就是数组:
-NSMutableArray savedGames
--GameSave a
---NSMutableArray board;
----Piece a, b, c, etc.
-----some ints
---NSString whitePlayer, blackPlayer;
---int playerOnTop, turn;
--GameSave b
---NSMutableArray board;
----Piece a, b, c, etc.
-----some ints
---NSString whitePlayer, blackPlayer;
---int playerOnTop, turn;
Run Code Online (Sandbox Code Playgroud)
等等
这些是我的NSCoding方法:
GameSave.m
- (void)encodeWithCoder:(NSCoder *)coder {
[coder encodeObject:whitePlayer forKey:@"whitePlayer"];
[coder encodeObject:blackPlayer forKey:@"blackPlayer"];
[coder encodeInt:playerOnTop forKey:@"playerOnTop"];
[coder encodeInt:turn forKey:@"turn"];
[coder encodeObject:board forKey:@"board"];
}
- (id)initWithCoder:(NSCoder *)coder {
self = [[GameSave alloc] init];
if (self != nil)
{
board = [coder decodeObjectForKey:@"board"]; …Run Code Online (Sandbox Code Playgroud)