2010-05-07 67 views
0

我有一個問題,「CFDataRef。 我從」kCFSocketDataCallBack中獲取「數據」字段。 「數據」應該對應於套接字上接收到的字符串。 例如,如何在NSString中進行轉換,以便將文本放入文本框?「CFDataRef」有問題。

非常感謝您

static void 
AcceptDataCallback(CFSocketRef s, 
CFSocketCallBackType type, CFDataRef 
address, const void *data, void *info) 
{ 

//my code for the textBox 

} 

回答

2

你可以先嚐試通過鑄造將其轉換爲NSData的:

NSData * someData = (NSData*)address; 

NSData的然後轉換成的NSString:

NSString * someString = [[NSString alloc] initWithData:someData encoding:NSASCIIStringEncoding]; 

或者做全部一次:

NSString * someString = [[NSString alloc] initWithData:(NSData*)address encoding:NSASCIIStringEncoding]; 

您可能不得不亂用編碼。

+0

如果我有一個NSString,我必須將它保存在CFDataRef中? – zp26 2010-05-07 20:36:31

+0

NSString * myString = @「My string」; CFDataRef myDataRef =(CFDataRef)[myString dataUsingEncoding:NSASCIIStringEncoding]; – 2010-05-07 23:14:00