我没有太多的位和字节,所以我很抱歉,如果这个问题很愚蠢。通过UDP传输数据最小化的最有效方法是什么?
我有一些插座的经验,通常用于传输少量的纯文本。但是这一次我必须传输更多的数据,我可以通过UDP分解。
我正在开发一个游戏,其中服务器是用Java编写的,我想向客户端发送一个对象数组。由于我是一个web开发人员,JSON是传输数据时弹出的第一个东西,但我非常怀疑这是网络中最有效的方式。
在JSON的情况下:
{
"players": [
{
"id": "884B0EAA2C7F16BA", // hex string
"name": "some guy", // string
"x": 0, // double
"y": 0, // double
"xv": 0, // double
"yv": 0, // double
"angle": 0, // double
}, {
"id": "AB61F7C2AAE0B488", // hex string
"name": "some other guy", // string
"x": 0, // double
"y": 0, // double
"xv": 0, // double
"yv": 0, // double
"angle": 0, // double
}
]
}
现在,我可以添加自定义的分隔符来分割每个球员和另一个分隔符分割的数据。在我的光学中,最有效的方法之一是将每行播放器的值放入,并在这些值之间放置预定义的字符序列。
884B0EAA2C7F16BA[|]some guy[|]0[|]0[|]0[|]0[|]0
AB61F7C2AAE0B488[|]some other guy[|]0[|]0[|]0[|]0[|]0
虽然这对我很有用,但名称等仍有一些安全隐患。我很难告诉客户,包含“[|]”的显示名称是非法的。
什么是尽量减少传输数据的最有效的方法是什么?
有关加密任何其他资料将不胜感激!
“加密” deoesn't最小化数据,*压缩*数据最小化 - 你可以看看类似的gzip压缩类(GZIPInput /输出中流)? – Nim 2012-07-12 11:24:49