我有两个客户端,一个是iOS(客户端A),另一个是Jave(客户端B),客户端A用于发送者,客户端B是从客户端A接收数据并在控制台中打印,现在我发送一些String(String和JsonString)到客户端B,客户端B可以接收客户端A的消息,但控制台打印不完整
这是我的步骤
1,我在iOS中定义了一个NSDictionary
let dict:NSDictionary = ["type":type,"x":point.x,"y":point.y]
2,将它修改为json字符串并在json String
中附加一些字符串var error:NSError?
let data = NSJSONSerialization.dataWithJSONObject(dict,options:NSJSONWritingOptions.PrettyPrinted, error: &error)
var str = NSString(data: data!, encoding: NSUTF8StringEncoding)
var newStr = return "\(toPort)#\(str!)"
然后我在iOS控制台中打印它,它工作正常
3,我将字符串转换为NSData
let data = newStr.dataUsingEncoding(NSUTF8StringEncoding)
4,将NSData发送到服务器
self.socket!.writeData(data!, withTimeout: self.timeout, tag: 0)
5,客户端B中只显示{
,会发生什么?
然后我尝试使用jave来实现客户端A,它在客户端B中运行良好
答案 0 :(得分:0)
我解决了它
1,删除\n
str
2,使用
var newStr = return "\(toPort)#\(str!)\n"
的
var newStr = return "\(toPort)#\(str!)"