项目记录03--客unity,服erlang--框架net
2015-11-09 15:35
483 查看
%% 写入字符串
write_string(Bin,Str)->
L = byte_size(list_to_binary(Str)), %% 数据长度
<<Bin/binary,L:16,Str/binary>>.
错误写法,认为Str/binary会自动转换
改:
write_string(Bin,Str)->
StrBin = list_to_binary(Str),
L = byte_size(StrBin), %% 数据长度
<<Bin/binary,L:16,StrBin/binary>>.
客户端错误:
ArgumentOutOfRangeException: ArgRange_Array
Parameter name: count
查看代码发现在string value = Encoding.UTF8.GetString(mDataBuff, mPosition, count);报错。顿时明白编码问题,首先想到就是大小端问题,客户端有检查大小端,再回看服务端<<Bin/binary,L:16,StrBin/binary>>.这句L:16没有做转小端。L:16/little.
客户端:
1.成功解析基本的服务端发送的数据。
服务端:
1.在协议公共类pt里面添加读取object,byte,short,int,long功能
下步:
整理代码,重构。。。。
write_string(Bin,Str)->
L = byte_size(list_to_binary(Str)), %% 数据长度
<<Bin/binary,L:16,Str/binary>>.
错误写法,认为Str/binary会自动转换
改:
write_string(Bin,Str)->
StrBin = list_to_binary(Str),
L = byte_size(StrBin), %% 数据长度
<<Bin/binary,L:16,StrBin/binary>>.
客户端错误:
ArgumentOutOfRangeException: ArgRange_Array
Parameter name: count
查看代码发现在string value = Encoding.UTF8.GetString(mDataBuff, mPosition, count);报错。顿时明白编码问题,首先想到就是大小端问题,客户端有检查大小端,再回看服务端<<Bin/binary,L:16,StrBin/binary>>.这句L:16没有做转小端。L:16/little.
客户端:
1.成功解析基本的服务端发送的数据。
服务端:
1.在协议公共类pt里面添加读取object,byte,short,int,long功能
下步:
整理代码,重构。。。。
相关文章推荐
- 被Unity5坑惨了
- Unity自动保存场景脚本
- 深度分析Unity的Coroutine
- 项目记录02--客unity,服erlang--框架net
- unity3d中的欧拉角
- Unity RPG游戏,场景任务的设计
- [Unity热更新]lua基础(一)
- 1.Unity脚本生命周期
- UnityVS(Visual Studio Tools For Unity)的安装与使用
- Unity3D 新动画Animator的事件添加和使用
- Physics.IgnoreLayerCollision没有效果
- Unity3D游戏引擎最详尽基础教程
- unity资源管理
- Unity3d通用工具类之数据配置加载类
- Unity3d通用工具类之数据配置加载类
- Unity5 AssetBundle 打包以及加载
- Unity Shader 什么是法线贴图
- Unity Shader Rendering Mode
- Unity ShaderLab学习总结
- unity3d中对像之间的相互作用的实现