在我的应用程序中,我需要比较 vcard 并确定它们之间是否有变化。
我不想在内存中保留整个 vcard,因为这可能非常庞大。我想做的是保留该 vcard 的散列值,但散列值必须非常精确,以免在非常接近/相似的 vcard 的情况下不重复(例如,差异是由一个字符引起的)。
我已经尝试过 Objective-C 的hash
字符串方法,但这并不能很好地工作,因为它会在类似的 vcard 的情况下创建重复项。
我现在正在考虑使用 SHA256 加密电子名片,然后比较 SHA(类似于密码比较的方式)。
这是个好主意吗?关于如何保存大字符串的较小版本然后能够将其与另一个进行比较以进行更改的任何其他想法?