修改我的世界服务器数据包,发送数据包到我的世界服务器:目标c

我一直在尝试从我的自定义Cocoa应用程序(写在Objective-C当然)发送数据包到我的世界服务器。尽管如此,但我有点困惑。我是用Java做的。这很容易。尽管这样做是客观的,但事实证明它更具挑战性。发送数据包到我的世界服务器:目标c

这是我使用的代码:其中要求

- (void)handshake

{

PacketHandshake *packet = [PacketHandshake packetString:[NSString stringWithFormat:@"%@;%@:%i", username, IP, PORT]];

[packet writeData:dataOut];

}

- (void)writeData:(NSOutputStream *)dataOut

{

[super writeData:dataOut]; //Writes the "header" which is a char with the value of 0x02 (char packetID = 0x02)

NSUInteger len = [string lengthOfBytesUsingEncoding:NSUTF16BigEndianStringEncoding]; //Getting the length of the string i guess?

NSData *data = [string dataUsingEncoding:NSUTF16BigEndianStringEncoding]; //Getting string bytes?

[dataOut write:(uint8_t*)len maxLength:2]; //Send the length?

[dataOut write:[data bytes] maxLength:[data length]]; //Send the actual string?

}

我已经建立事先服务器连接成功,但我真的不知道是否不是我正确发送数据包。有人可以请解释我应该如何发送各种数据类型和对象。 (int,byte/char,short,double,NSString,BOOL/bool)

此外,是否有任何特定的或通用的方法来发送像Minecraft所要求的数据包?

好吧,我想现在的问题是:Java和Objective-C中的数据类型(主要是字符串)如何关联?

任何帮助表示赞赏,谢谢!

没有人知道吗?

2012-06-02

tallen11

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值