2016-10-13 00:16:48 点击量:23 标签: 收藏本文
网络传输过程中遇到中文字符串长度计算的问题,网上搜索到的方法比较多,下面记录一种简单的方法,借助ByteArray的writeMultiByte方法来实现。
代码如下:
- private function send(str : String) : void
- {
- if(_socket)
- {
- _socket.writeMultiByte(str, "CN-GB");
- _socket.flush();
- }
- }
- /**
- * 获取字符串长度,解决中文字符串长度计算错误问题
- * @param thisString 要计算长度的字符串CuPlayer.com
- * */
- private function GetStringLength(thisString : String) : Number
- {
- var thisStringByteLengths :ByteArray = new ByteArray();
- thisStringByteLengths.writeMultiByte(thisString, "CN-GB");
- return thisStringByteLengths.length;
- }