zoukankan      html  css  js  c++  java
  • [ActionScript 3.0] 记录几个ByteArray 十六进制 String等相互转换的方法

                /**
                 * 通过hax数据返回ByteArray
                 * @param hax 格式 "AA5A000100FF"
                 */
                private 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"
                 */
                private function from16ToByteArray(str:String):ByteArray{  
                    var b_ba: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);  
                        b_ba.writeByte(b_byte);  
                    }  
                    return b_ba;  
                }  
                /** 
                 * String转ByteArray  
                 * @param str 
                 * @return  
                 */       
                public function convertStringToByteArray(str:String):ByteArray   
                {   
                    var bytes:ByteArray;   
                    if (str)   
                    {   
                        bytes=new ByteArray();   
                        bytes.writeUTFBytes(str);   
                    }   
                    return bytes;   
                }   
                /** 
                 * ByteArray转String 
                 * @param bytes 
                 * @return  
                 */       
                public 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  
                 */       
                private 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;  
                }
  • 相关阅读:
    HDOJ 4747 Mex
    HDU 1203 I NEED A OFFER!
    HDU 2616 Kill the monster
    HDU 3496 Watch The Movie
    Codeforces 347A A. Difference Row
    Codeforces 347B B. Fixed Points
    Codeforces 372B B. Hungry Sequence
    HDU 1476 Sudoku Killer
    HDU 1987 How many ways
    HDU 2564 词组缩写
  • 原文地址:https://www.cnblogs.com/frost-yen/p/6691718.html
Copyright © 2011-2022 走看看