0

これが状況です。バンドルからイメージをプルするために使用される NSData (イメージ) または文字列のいずれかを保存する必要があります。これは合法ですか?

if(aCondition){
    [managedObject setValue:filePath forKey:imageKey];
}else{
    [managedObject setValue:imageData forKey:imageKey];
}

これが合法である場合、この情報を取得するときが来たら、最初に保存した値のタイプをどのように判断できますか?

4

1 に答える 1

0

タイプを NSData (バイナリ) にするので、両方ともそのように保存します。パスの長さが数バイト (たとえば 128) を超えることはなく、画像がたとえば 500 バイトを超える必要があると仮定すると、プロパティが要求されたときにそれを文字列に変換するか、データのままにするかを決定できます。

このアプローチが気に入らない場合は、ブール値を追加し、それを使用してデータのタイプを示します。

于 2012-09-12T22:27:13.947 に答える