• ByteArray、16进制、字符串之间的转换


    ByteArray、16进制、字符串之间的转换:

    package fengzi.convert
    {
    	import flash.utils.ByteArray;
    	public class ByteArrayTranslated
    	{
    
    		/***
    		* 通过hax数据返回ByteArray
    		* @param                      hax       格式 "AA5A000100FF"
    		***/
    		public static function getHax(hax:String):ByteArray
    		{
    			var byte:ByteArray=new ByteArray();
    			for (var i:uint = 0; i<hax.length; i=i+2)
    			{
    				trace(hax.substr(i, 2));
    				trace(uint("0x"+hax.substr(i, 2)));
    				byte.writeByte(uint("0x"+hax.substr(i, 2)));
    			}
    
    			return byte;
    		}
    
    
    
    
    		/***
    		* 16进制数据返回ByteArray
    		* @param                       str         格式 "AA5A000100FF"
    		* @return                      bytes
    		***/
    		public static function from16ToByteArray(str:String):ByteArray
    		{
    			var bytes:ByteArray=new ByteArray();
    			var b_arr:Array = str.split("");
    			var b_length:int = b_arr.length;
    			for (var i:int=0; i<b_length-1; i+=2)
    			{
    				var b_char1:String = b_arr[i];
    				var b_char2:String = b_arr[i + 1];
    				var b_byte:int=parseInt(b_char1+b_char2,16);
    				//trace("b_byte:",b_byte);  
    				bytes.writeByte(b_byte);
    			}
    			return bytes;
    		}
    
    
    
    		/*** 
    		* String转ByteArray  
    		* @param             str           字符
    		* @return            bytes
    		***/
    		public static function convertStringToByteArray(str:String):ByteArray
    		{
    			var bytes:ByteArray;
    			if (str)
    			{
    				bytes=new ByteArray();
    				bytes.writeUTFBytes(str);
    			}
    			return bytes;
    		}
    
    
    
    		/*** 
    		* ByteArray转String 
    		* @param       bytes 
    		* @return      str
    		***/
    		public static function convertByteArrayToString(bytes:ByteArray):String
    		{
    			var str:String;
    			if (bytes)
    			{
    				bytes.position = 0;
    				str = bytes.readUTFBytes(bytes.length);
    			}
    			return str;
    		}
    
    
    
    
    		/*** 
    		* 把ByteArray转换为16进制的形式的字符串 
    		* @param ba 
    		* @param name 
    		* @return  
    		***/
    		public static function byteArrayTo16(ba:ByteArray):String
    		{
    			ba.position = 0;
    			var b_str:String = "";
    			while (ba.bytesAvailable > 0)
    			{
    				var b_s:String = ba.readUnsignedByte().toString(16);
    				//              trace("b_s:",b_s);  
    				if (b_s.length < 2)
    				{
    					b_s = "0" + b_s;
    				}
    				b_str +=  b_s;
    			}
    			return b_str;
    		}
    
    
    
    
    
    
    	}
    
    }
    

      

  • 相关阅读:
    Visual Studio 中的 .NET Framework 类库
    泛型
    泛型
    事件
    基于事件的异步模式
    使用委托进行异步编程
    使用 IAsyncResult 调用异步方法
    异步编程设计模式
    演练:使用VS2010 C# 创作简单的多线程组件
    [转][MEF插件式开发] 一个简单的例子
  • 原文地址:https://www.cnblogs.com/fengziwu/p/10913373.html
Copyright © 2020-2023  润新知