我有一个Socket从相机中带回来这个JSON
var string:String = socket.readUTFBytes(socket.bytesAvailable);
string = '{"rval":0,"msg_id":514}{ "msg_id": 7, "type": "video_record_complete" ,"param":"/tmp/fuse_d/DCIM/100MEDIA/YDXJ0149.mp4"}';
即。套接字中的2个JSON对象。
在解码之前有没有办法拆分它们?
这是我尝试解码时得到的JSON解码错误
JSONParseError: Unexpected characters left in input stream
答案 0 :(得分:1)
在解码之前有没有办法拆分它们?
当然,只需使用split()
:
var strings:Array = string.split("}{");
但是,您可以使用readtUTF()
而不是readtUTFBytes()
一次一个地提取每个JSON消息bytesAvailable
:
while (socket.bytesAvailable) {
var json:String = socket.readUTF();
}