iOS 网络编程 socket 发送数据

//

//  ViewController.m

//  070703

//

//  Created by tianshangrenjian on 15/7/6.

//  Copyright © 2015 tianshangrenjian. All rights reserved.

//


#import "ViewController.h"


@interface ViewController ()<NSStreamDelegate>

- (IBAction)btStart:(id)sender;

@property (weak, nonatomic) IBOutlet UIButton *btSend;


@property (strong, nonatomic) NSInputStream *inputStream;

@property (strong, nonatomic) NSOutputStream *outputStream;



- (IBAction)btSendMsg:(id)sender;


@end


@implementation ViewController


- (void)viewDidLoad {

    [super viewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

}


- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}


- (IBAction)btStart:(id)sender {

    CFReadStreamRef inputStream;

    CFWriteStreamRef outputStream;

    

    NSString *host=@"127.0.0.1";

    int nPort=12345;

    CFStreamCreatePairWithSocketToHost(NULL, (__bridge CFStringRef)host, nPort, &inputStream, &outputStream);

    

    self.inputStream=(__bridge NSInputStream *)(inputStream);

    self.outputStream=(__bridge NSOutputStream *)(outputStream);

    self.inputStream.delegate=self;

    

    [self.inputStream scheduleInRunLoop:[NSRunLoop mainRunLoop] forMode:NSDefaultRunLoopMode];

    

    [self.inputStream open];

    [self.outputStream open];

    

    

    

}

- (void)readData

{

    uint8_t buffer[1024];

    NSInteger nLen=[self.inputStream read:buffer maxLength:1024];

    NSData *data=[NSData dataWithBytes:buffer length:nLen];

    NSString *str=[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

    NSLog(@"readData:%@",str);

}


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

{

    switch (eventCode) {

        case NSStreamEventHasBytesAvailable:

            [self readData];

            break;

            

        default:

            break;

    }

}

- (IBAction)btSendMsg:(id)sender {

    NSString *str=@"SCH:daniutest";

    NSData *data=[str dataUsingEncoding:NSUTF8StringEncoding];

    [self.outputStream write:data.bytes maxLength:data.length];

}

@end


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值