gpt4 book ai didi

ios - 压缩 sqlite 数据,NSString 或 NSData?

转载 作者:行者123 更新时间:2023-11-28 18:23:59 25 4
gpt4 key购买 nike

我使用 sqlite 文件存储数据,我存储的很多数据都是 NSString 格式,如果我将这些数据存储为 NSData 是否会使我的 sqlite 文件的大小变小?我还能做些什么来减小 sqlite 文件的大小吗?

谢谢。

最佳答案

正如其他人所说,SQLite/CoreData 无法真正帮助您完成这项工作。您已经指出了正确的解决方案,即使用 NSData 将原始字节存储在 SQLite 存储中并自行进行内存中转换。

这将非常慢,因为压缩本身就很昂贵。

这是您需要做的:

  1. 将属性类型设置为 NSData
  2. 查看 libz并将其添加到您在 Xcode 中的项目
  3. 从 libz 中选择一种压缩风格
  4. 实现自定义属性来进行翻译

    - (NSString *)getAttrString {
    NSData *bytes = self.attr
    //decompress
    }

    - (void)setAttrString:(NSString *)s {
    NSData *d = //compress
    self.attr = d;
    }

正如其他人所提到的,压缩小字符串实际上没有任何好处,因此您可能希望向模型添加一个 bool 值,以指示数据是否实际被压缩。

关于ios - 压缩 sqlite 数据,NSString 或 NSData?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14518719/

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