此代碼沒有意義。
您創建一個帶有文件路徑的NSData對象,然後轉向並重新分配路徑var表示一個XML塊的字符串。它非常混亂,可能會導致錯誤。不要以這種方式重用變量。
在任何情況下,對數據進行編碼,以您使用NSString的字符串:
- (id)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding
任何您想要的然後,只需插入字符串。
編輯:
您好,對不起,我不知道如何 使用本 - (ID)initWithData:(NSData的 *)數據編碼:(NSStringEncoding)編碼在 我的代碼。
像這樣:(抱歉格式#2的編輯似乎是眨眼今天)
NSData *myData = [NSData dataWithContentsOfFile:pathDoc];
NSString *myDataString = [[NSString alloc] initWithData:myData encoding:NSUnicodeStringEncoding];
NSString *formatString = @"<size>%d</size><type>%d</type><cdate>%@</cdate><file>%c</file><fname>File</fname><data>%@</data>";
pathDoc = [NSString stringWithFormat:formatString,fileSizeVal,filetype,creationDate,myDataString];
的NSUnicodeStringEncoding
是幾個常量定義各種串編碼中的一種。請參閱NSString類的參考。你使用哪一個取決於你的服務器的期望。
祝你好運。
您期望打印什麼? CDATA部分? Base-64編碼數據? – kennytm 2010-03-19 13:29:59
我想通過服務器上的數據和存儲文件數據庫中的二進制數據 NSData * myData = [NSData dataWithContentsOfFile:pathDoc]; pathDoc = [NSString的stringWithFormat:@ 「%d %d %@ %C 文件 」,fileSizeVal,文件類型,creationDate,myData的]; –
milanjansari
2010-03-19 13:35:11