归档解档,数据错误

沈小夕 2013-11-17 09:41:59
为什么我这样做解档出来的路宽是1啊,而我的数据里明明是350啊~~~~跪求大神看看啊
-(void)encodeWithCoder:(NSCoder *)encoder
{
[super encodeWithCoder:encoder];
[encoder encodeObject:[NSValue valueWithCGPoint:self.startPoint] forKey:@"startPoint"];
[encoder encodeObject:[NSValue valueWithCGPoint: self.imageTranslate] forKey:@"endPoint"];
[encoder encodeObject:[NSNumber numberWithBool:self.roadWidth] forKey:@"roadWidth"];
[encoder encodeObject:[NSNumber numberWithBool:self.roadIslandWidth] forKey:@"roadIslandWidth"];
[encoder encodeObject:[NSNumber numberWithBool:self.upOrLeftLaneNum] forKey:@"upOrLeftLaneNum"];
[encoder encodeObject:[NSNumber numberWithBool:self.downOrRightLaneNum] forKey:@"downOrRightLaneNum"];


}
- (id)initWithCoder:(NSCoder *)decoder
{
if (self = [super init])
{ self.startPoint=((NSValue *)[decoder decodeObjectForKey:@"startPoint"]).CGPointValue;
self.endPoint=((NSValue *)[decoder decodeObjectForKey:@"endPoint"]).CGPointValue;
self.roadWidth=((NSNumber *)[decoder decodeObjectForKey:@"roadWidth"]).integerValue;
self.roadIslandWidth=((NSNumber *)[decoder decodeObjectForKey:@"roadIslandWidth"]).integerValue;
self.upOrLeftLaneNum=((NSNumber *)[decoder decodeObjectForKey:@"upOrLeftLaneNum"]).integerValue;
self.downOrRightLaneNum=((NSNumber *)[decoder decodeObjectForKey:@"downOrRightLaneNum"]).integerValue;

}


 NSMutableData *data = [NSMutableData data ];
//创建一个归档类
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc]initForWritingWithMutableData:data];
[archiver encodeObject:[subviews objectAtIndex:i] forKey:@"RoadSectionView"];
[archiver finishEncoding];
[data writeToFile:[self getFilePath] atomically:YES];
//将数据写入文件里
/* NSData *data = [NSKeyedArchiver archivedDataWithRootObject:self.view];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:(NSMutableData *)data];
[archiver encodeObject:self.view forKey:@"RoadSectionView"];
[archiver finishEncoding];*/

NSMutableData *data1 = [NSMutableData dataWithContentsOfFile:[self getFilePath]];
NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc]initForReadingWithData:data1];
RoadSectionView *p3 = [unarchiver decodeObjectForKey:@"RoadSectionView"];
NSLog(@"%d",p3.roadWidth);
...全文
214 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
RannieR 2013-12-02
  • 打赏
  • 举报
回复
[encoder encodeObject:[NSNumber numberWithBool:self.roadWidth] forKey:@"roadWidth"]; 你在归档的时候把这个路宽属性归档成布尔类型了,所以自然就只能是0或者1了。
沈小夕 2013-12-01
  • 打赏
  • 举报
回复
引用 1 楼 yang8456211 的回复:
周日还在忙啊
研究生么有周六周日~~~~
小杨在玩iOS 2013-12-01
  • 打赏
  • 举报
回复
引用 3 楼 jingtingmeihao 的回复:
[quote=引用 1 楼 yang8456211 的回复:] 周日还在忙啊
研究生么有周六周日~~~~[/quote] 额。看来比我大。。。
lyqigai 2013-12-01
  • 打赏
  • 举报
回复
高深,我是菜鸟我不懂。
七琪吖 2013-11-18
  • 打赏
  • 举报
回复
小杨在玩iOS 2013-11-17
  • 打赏
  • 举报
回复
周日还在忙啊
模拟生产实战,对一套19.4的rac集群进行数据库迁移。迁移到另外的一套19.4的数据库集群。生产实战,带领同学一步一步操作。该方法同样适用于迁移单实例数据库到集群环境。通过该课程,同学们可以学会如下知识点。1-如何无数据丢失的进行数据迁移。2-catalog start with 如何使用3-restore database 在rman和sql命令行区别是什么4-recover database [using backup controlfile until cancel ]何时在rman使用,何时在sql命令行使用。5-进行数据恢复的时候,源库新产生的归档如何进行数据恢复。本节课会为同学们解惑一课程主题模拟生产实战,对一套19.4的rac集群进行数据库迁移。迁移到另外的一套19.4的数据库集群。 二课程特色 生产实战,带领同学一步一步操作。该方法同样适用于迁移单实例数据库到集群环境。  三课程内容 1-备份源数据库2-在目标库对备份集进行restore操作3-recover-通过rman进行recover(如何通过catalog start with 进行操作)这个时候的recover是recover哪里的归档?4-recover-通过sql命令行对源库新产生的归档进行recover5-注册数据库到集群等操作.修改remote_listener,修改密码文件,添加数据库到集群软件等操作。6-迁移验证sys用户是否可以登陆,普通用户是否可以登陆?sys用户登陆和普通用户登陆区别是什么?

29,027

社区成员

发帖
与我相关
我的任务
社区描述
主要讨论与iOS相关的软件和技术
社区管理员
  • iOS
  • 大熊猫侯佩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧