Objective c 无法从tcp端口读取数据

Objective c 无法从tcp端口读取数据,objective-c,ios,objective-c-blocks,Objective C,Ios,Objective C Blocks,我已经编写了从tcp端口3000读取数据的代码 - (BOOL)connect { int cIter = 0; while(cIter++<5) { CFReadStreamRef readStream; CFWriteStreamRef writeStream; @try{ CFStreamCreatePairWithSocketToHost(NULL, (__bridge CFStringRef)M_CONNECT_HOST, M_CONNEC

我已经编写了从tcp端口3000读取数据的代码

- (BOOL)connect
{
int cIter = 0;
while(cIter++<5)
{
    CFReadStreamRef readStream;
    CFWriteStreamRef writeStream;
    @try{
        CFStreamCreatePairWithSocketToHost(NULL, (__bridge CFStringRef)M_CONNECT_HOST, M_CONNECT_PORT, &readStream, &writeStream);
    }
    @catch (NSException *ex) {

    }
    if(readStream!=nil && writeStream!=nil)
    {
        m_sin = (__bridge NSInputStream *)readStream;
        m_sout = (__bridge NSOutputStream *)writeStream;
        [m_sin setDelegate:self];
        [m_sout setDelegate:self];

        [m_sin scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
        [m_sout scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
        [m_sin open];
        [m_sout open];

        return  true;
    }
}
return false;
}
-(BOOL)连接
{
int cIter=0;

而(cIter++实现handleEvent并检查事件代码

 -(void)stream:(NSStream *)aStream handleEvent:(NSStreamEvent)eventCode{

    switch (eventCode) {
        case NSStreamEventOpenCompleted:
            NSLog(@"stream opened");
            break;

        case NSStreamEventHasBytesAvailable:            

            if (aStream == inputStream) {
                // read it in
                unsigned int len = 0;
                len = [inputStream read:buf maxLength:1019];
                buf[len] = '\0';

                if(!len) {

                    if ([aStream streamStatus] != NSStreamStatusAtEnd){

                        NSLog(@"Failed reading data from peer");

                    }

                } else {

                     //I am reading UIImage here                 
                     NSData *data = [NSData dataWithBytes:(const void *)buf length:1019];                    
                     UIImage *image = [UIImage imageWithData:data];
                     self.transferedimage.image = image;


                }
            }

            break;

        case NSStreamEventErrorOccurred:
            NSLog(@"stream ErrorOccurred");
            break;

        case NSStreamEventEndEncountered:
            NSLog(@"stream EndEncountered");
            break;

        default:
            NSLog(@"stream UnKnown");
            break;
    }
}

[NSInputStream streamError]
返回什么?[NSInputStream streamError]返回“操作无法完成。地址不正确”我尝试使用您的代码,但此“案例nsStreamVenthasbytesAvailable:“案例永远都不是真的使用本教程首先创建基于套接字的iPhone应用程序,或者查看它