【问题标题】:Cocoa error 256 core dataCocoa错误256核心数据
【发布时间】:2010-12-27 07:02:26
【问题描述】:

当我尝试保存数据时出现错误“Cocoa 错误 256”。如何解决?还有什么问题?

【问题讨论】:

    标签: iphone core-data


    【解决方案1】:

    根据Xcode中的帮助参考:

    NSFileReadUnknownError 读取错误,原因未知

    适用于 Mac OS X v10.4 及更高版本。

    在 FoundationErrors.h 中声明。

    遗憾的是,这可能并没有太大帮助,尽管它是一个未知的读取错误。

    【讨论】:

    • sqlite 文件的位置是否可能已更改或文件已被某种方式损坏? 推测>
    【解决方案2】:

    如果它是核心数据错误,则可能在发生错误的地方附近有一个实际的错误对象。如果您转储错误对象 userInfo 字典,通常可以获得比错误代码本身更多的详细信息。

    【讨论】:

      【解决方案3】:

      这就是它归结为(正如 Tegeril 所说)

      NSFileReadUnknownError 读取错误, 原因不明

      适用于 Mac OS X v10.4 及更高版本。

      在 FoundationErrors.h 中声明。

      文件也可以是位于 URL/URI 的资源,如果 URL 包含未编码的字符,则可能导致此类错误。

      检查资源/文件的路径。

      【讨论】:

        【解决方案4】:

        我在使用自定义脚本(即不使用 Core Data)为 iOS 应用程序填充 SQLite 数据库时遇到了这个错误。事实证明,在添加新行之后,您必须自己更新一些元数据。在 Z_PRIMARYKEY 中找到 Z_NAME 等于您刚刚插入的表的名称的行。确保该行中的 Z_MAX 等于您插入行的表中 Z_PK 的最大值。就我而言,只要我用正确的数字更新 Z_MAX,错误就消失了。

        所以,对于“ZAUTHOR”表:

        SELECT z_pk FROM ZAUTHOR ORDER BY z_pk DESC LIMIT 1; /* Returns 1234 */
        UPDATE Z_PRIMARYKEY SET z_max = 1234 WHERE z_name = 'Author';
        

        This is the article which helped me track down the error.

        【讨论】:

          【解决方案5】:

          当模拟器打开时切换网络连接时,我在 Xcode 6 (& 7) 上收到此错误。例如,从一个无线网络移动到另一个无线网络。我的解决方案是退出模拟器并重新启动。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2012-01-20
            • 1970-01-01
            • 1970-01-01
            • 2011-10-30
            • 2014-07-05
            • 2012-03-28
            • 2012-02-16
            相关资源
            最近更新 更多