gpt4 book ai didi

ios - UIDocument loadFromContents 因 EXC_BAD_ACCESS 而失败

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:23:22 24 4
gpt4 key购买 nike

<分区>

我有一个使用 iCloud 文档存储的非常简单的 IOS 应用程序。一切正常,然后在某个时候我开始在我的文档加载方法中遇到至少一个 iCloud 文档的 EXC_BAD_ACCESS 错误,尽管大多数文件加载都很好。

- (BOOL)loadFromContents:(id)contents ofType:(NSString *)typeName error:(NSError *__autoreleasing *)outError {

file = (NSFileWrapper*) contents;

NSFileWrapper *infoFile = [[file fileWrappers] objectForKey:InfoFile];
NSData *infoData = [infoFile regularFileContents];

if(nil != infoData) {

NSPropertyListFormat format = NSPropertyListBinaryFormat_v1_0;
NSError *propertyListError;

// EXC_BAD_ACCESS occurs here
NSDictionary *dictionary = [NSPropertyListSerialization propertyListWithData:infoData options:NSPropertyListImmutable format:&format error:&propertyListError];

if(nil == propertyListError) {

_name = [dictionary objectForKey:@"name"];
_date = [dictionary objectForKey:@"date"];
_index = [dictionary objectForKey:@"index"];
_paperSize = [GritzPaperSizeEnum enumWithType:[dictionary objectForKey:@"paperSize"]];

TFLog(@"loading doc %@", _name);

_pages = [[NSMutableArray alloc] init];

for (NSString *key in file.fileWrappers) {

NSFileWrapper *subDir = [[file fileWrappers] objectForKey:key];

if(subDir.isDirectory) {
GritzPage *page = [[GritzPage alloc] initFromFile:subDir];
[_pages addObject:page];
}
}

_currentPage = [_pages objectAtIndex:0];

return YES;
}
}

return NO;
}

enter image description here

我希望我可以“捕获”并处理坏数据并忽略损坏的文件;但我似乎无法弄清楚如何。 EXC_BAD_ACCESS 错误会导致应用程序崩溃。

我应该做些什么来提前确定数据或文件将失败并跳过它(或删除它)。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com