Недавно я начал работать над основными данными, пожалуйста, кто-нибудь скажет мне, какая разница между преобразуемыми и двоичными данными. Мне нужно сохранить myClassObject в основных данных. Я создал атрибут и определил его тип как двоичные данные, но во время хранения я получаю ошибку.
В чем разница между преобразуемыми и двоичными данными
Ответ 1
С двоичным атрибутом вы напрямую читаете и записываете экземпляры NSData
.
С помощью преобразуемого атрибута вы читаете и записываете экземпляры любого класса, которые могут быть преобразованы в и из NSData
. Фактическое хранилище данных совпадает с бинарным атрибутом, но Core Data использует NSValueTransformer
для преобразования в/из NSData
при необходимости.
Например, скажем, ваш управляемый объект имеет атрибут изображения, где было бы удобно читать и писать UIImage
напрямую. Кроме того, UIImage
не может быть сохранено в Core Data. Но UIImage
можно преобразовать в и из NSData
. Итак, если вы использовали преобразованный атрибут, вы могли читать и писать UIImage
, сохраняя при этом NSData
в хранилище данных.