ascii码与hex转换c语言,javascript ASCII和Hex互转的实现方法

var symbols = " !\"#$%&'()*+,-./0123456789:;<=>?@";

var loAZ = "abcdefghijklmnopqrstuvwxyz";

symbols+= loAZ.toUpperCase();

symbols+= "[\\]^_`";

symbols+= loAZ;

symbols+= "{|}~";

//Hex to ASCII

function toAscii(str)

{

valueStr = str.toLowerCase();

var hex = "0123456789abcdef";

var text = "";

var i=0;

for( i=0; i

{

var char1 = valueStr.charAt(i);

if ( char1 == ':' )

{

i++;

char1 = valueStr.charAt(i);

}

var char2 = valueStr.charAt(i+1);

var num1 = hex.indexOf(char1);

var num2 = hex.indexOf(char2);

var value = num1 << 4;

value = value | num2;

var valueInt = parseInt(value);

var symbolIndex = valueInt - 32;

var ch = '?';

if ( symbolIndex >= 0 && value <= 126 )

{

ch = symbols.charAt(symbolIndex)

}

text += ch;

}

return text;

}

//ASCII to Hex

function toHex(str)

{

var valueStr = str;

var hexChars = "0123456789abcdef";

var text = "";

for( i=0; i

{

var oneChar = valueStr.charAt(i);

var asciiValue = symbols.indexOf(oneChar) + 32;

var index1 = asciiValue % 16;

var index2 = (asciiValue - index1)/16;

if ( text != "" ) text += ":";

text += hexChars.charAt(index2);

text += hexChars.charAt(index1);

}

return text;

}

你可能感兴趣的:(ascii码与hex转换c语言)