0
我一直在研究核心數據程序一段時間。我試圖在文本視圖中結合實體的屬性以保存爲PDF和打印。該實體的一個屬性使用二進制數據。將二進制數據(rtf)讀到字符串
當我執行此:
NSData *myData = [object valueForKey:@"cueNotes"];
...它返回:
typedstreamè@
NSMutableDataNSDataNSObjecti[276c]{\rtf1\ansi\ansicpg1252\cocoartf949\cocoasubrtf540
{\fonttbl\f0\fnil\fcharset0 LucidaGrande;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\f0\fs20 \cf0 step one text}
當我試試這個:
NSAttributedString* myDataTry = [[[NSAttributedString alloc] initWithRTF:myData documentAttributes:nil] autorelease];
... myDataTry爲零。我讀了一些關於RTF格式的,然後取出此:
typedstreamè@
NSMutableDataNSDataNSObjecti[276c]
...從myData的數據,但仍然獲得了零的結果。有誰知道我做錯了什麼?
更新:
NSString* notesString = [[[NSString alloc] initWithRTF:[object valueForKey:@"cueNotes"] documentAttributes:nil] autorelease];
以及一個分配的字符串,仍然沒有結果:思考的第一個答案我想這(以及一對夫婦排列)之後。
這裏是實體的我是從拉動的結果:
2010-10-30 00:47:32.867 lzshow7.2[4222:10b] <NSManagedObject: 0x2a4850> (entity: Song; id: 0x26a030 <x-coredata:///Song/t172F066B-285C-4125-B2FA-CFFA6A353D102> ; data: {
cueName = Stupid;
cueNo = 001;
cueNotes = <040b7479 70656473 74726561 6d8103e8 84014084 84840d4e 534d7574 61626c65 44617461 00848406 4e534461 74610084 8408>;
songToEffect = (
);
songToInstrument = (
);
})
「凍幹」數據會影響myData返回爲零的事實嗎? – 2010-10-16 14:53:09
不,我很確定你得到了一個無歸屬字符串,因爲當你保存它時,你將屬性字符串轉換爲原始數據而不是RTF。您正嘗試使用旨在寫入Core Data中的文本文件的方法。您需要避免所有這些,並將實際屬性字符串實例本身保存在可轉換屬性中。 – TechZen 2010-10-17 18:35:34
你有沒有關於你在說什麼的例子? – 2010-10-25 21:30:17