2010-11-13 46 views
1

我是一名年轻的iPhone开发人员,我正在尝试编写一个iPhone应用程序,用于同步我的Mac上的服务器端应用程序中的数据,基本上是文本数据。转换NSDATA的问题

我无法读取数据,在iPhone上侧如下:

`

(void)connectionReceived:(NSNotification *)aNotification { 

    NSFileHandle *incomingConnection = [[aNotification userInfo] objectForKey:NSFileHandleNotificationFileHandleItem]; 

    [[aNotification object] acceptConnectionInBackgroundAndNotify]; 

    NSData *receivedData = [incomingConnection availableData]; 

NSString *theString = [[[NSString alloc] initWithData:receivedData encoding:NSUTF8StringEncoding] autorelease]; 

`

我需要theString打印出来的文本标签上的iPhone,但我得到的是在服务器端应用程序中输入的文本的确切“十六进制代码转换”,我似乎无法将其转换为char。 任何人都可以帮忙吗?

回答

0

我不知道答案 - 但也有几件事情来看待,或者尝试:

  1. 你尝试转换成比UTF8编码的东西吗? (Unicode?ASCII?)

  2. 在十六进制输出中,它给你 - 我假设它给出了一个UTF8表示 - 即你的字符串中的每个字符都有一个8位(两个十六进制半字节)代码。是这样吗?十六进制代码对于字符串的UTF-8或ASCII表示是否“正确”?

  3. 结果中是否有任何“坏”代码?

我,如果发生这种情况,因为有字符(甚至invisable的 - 控制字符 - 空,等等)想知道你的字串这些都使得它如此的iOS不能做一个“正常”的UTF8转换...