·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]AS3的ByteArray用法之字符串存取

时间:2014-02-28 09:13cnblogs.com
跟readUTF,writeUTF不同,不用两个字节的head,直接存取字符串字节流, Java默认也用这种格式.

readMultiByte(length:uint, charSet:String):String
writeMultiByte(value:String, charSet:String):void
根据不同的编码存取字符串.
readUTF():String
writeUTF(value:String):void
这个格式分两部分: head + body
head:一个16为的整数表示之后字符串的字节数.
body:字符串的字节流. (这里的汉字用3个字节表示).

  1. var bytes:ByteArray = new ByteArray(); 
  2. bytes.writeUTF("123"); 
  3. showBytes(bytes);  
  4. // bytes: 0x0 0x3 0x31 0x32 0x33 (0x0,0x3 两个字节的头,表示后面有3个字节的字节流, 0x31:1, 0x32:2, 0x33:3) 
  5. bytes.length = 0
  6. bytes.position = 0
  7. bytes.writeUTF("CuPlayer.com提示:我是lite3"); 
  8. trace(bytes.length);  
  9. //CuPlayer.com提示: 13 头(2个字节) + 2个汉字(6个字节) + 5个字母数字(5个字节) 
  10.  
  11. function showBytes(bytes:ByteArray):void 
  12. var s:String = ""
  13. bytes.position = 0
  14. while (bytes.bytesAvailable) 
  15. s += "0x" + bytes.readByte().toString(16) + " "; 
  16. if (s.length > 0) ss = s.substr(0, s.length - 1); 
  17. trace("bytes:", s); 
  18.  
  19. readUTFBytes(length:uint):String 
  20. writeUTFBytes(value:String):void 

跟readUTF,writeUTF不同,不用两个字节的head,直接存取字符串字节流, Java默认也用这种格式.

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器