-1

我有以下代码:

 NSData * JSONData = [MyJSON dataWithJSONObject:highlightItemsArray];
                if ([JSONData isNotNull]){
                    NSError *error;
                    BOOL writeToDiskSuccess = [JSONData writeToFile:self.highlightDiskCachePath_ options:NSDataWritingAtomic error:&error];
                    if (!writeToDiskSuccess){
                        NSLog(@"Writing appended caption failed %@", error);
                    } else {
                        NSLog(@"Writing appended caption succeed");
                    }
                }

但是,当打印为空时,这将返回 NO 和错误。我怎样才能找出问题所在?

4

1 回答 1

0

我认为您需要添加更多细节才能在此处获得答案。

我假设你得到 writeToDiskSuccess = FALSE?如果是这样的话,我首先要看的是你是否错误地写入了错误的目录......你能给出 self.highlightDiskCachePath_ 的值吗?你在模拟器上也遇到同样的错误吗?如果是这样,您应该能够在 Finder 中导航到那里,以查看是否缺少路径元素或其他磁盘问题,为什么它不能在那里写入。

最后我会检查它不是特定于 JSONData writeToFile 失败的东西......你能写一个简单的文本文件到你试图写这个的位置吗?

此外,可能值得注意的是控制台输出中可能不寻常的任何内容,当这些事情失败时,您有时会在那里获得线索。

于 2013-01-18T22:16:47.657 回答