javascript ASCII和Hex互转
<script> 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<valueStr.length; i=i+2 )
{
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<valueStr.length; 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;
} </script>
javascript ASCII和Hex互转的更多相关文章
- ASCII与HEX对照转换表
最近在研究ESC/POS 打印指令,时不时的就用到 ASCII和Hex的相互转换 ASCII HEX ASCII HEX ASCII HEX ASCII HEX NUL 00 DEL 10 Space ...
- JavaScript 汉字与拼音互转终极方案 附JS拼音输入法
转:http://www.codeceo.com/article/javascript-pinyin.html 前言 网上关于JS实现汉字和拼音互转的文章很多,但是比较杂乱,都是互相抄来抄去,而且有的 ...
- JavaScript json和字符串互转
JavaScript内置json和字符串互转的函数JSON,不需要引入外部组件 JSON.stringify(obj)将JSON转为字符串. JSON.parse(string)将字符串转为JSON格 ...
- java代码(ascii与字母互转)
package test; /** * Java中将一个字符与对应Ascii码互转 * 1 byte = 8bit 可以表示 0-127 */ public class GetCharAscii { ...
- javascript与java编码互转
java:java.net.URLEncoder.encode(s, "UTF-8");java.net.URLDecoder.decode(chezhanInEn,"U ...
- javascript Json和String互转
var jsonText = "{\"id\":\"123\",\"name\":\"tom\",\&qu ...
- JavaScript Json与Map互转以及Map对象的取值方式
Json格式(Json字符串) : var json='{"name": "lily","age":"15"}' Map ...
- JavaScript 日期与时间戳互转
1.时间戳转日期格式: function timestampToTime(timestamp) { var date = new Date(timestamp * 1000);//时间戳为10位需*1 ...
- JavaScript 字符串与数组互转,并保持数据去重、排序功能
var valueArr = new Array(); if( $("input[name='type']").val() != ""){ valueArr = ...
随机推荐
- 洛谷P2925 [USACO08DEC]干草出售Hay For Sale
题目描述 Farmer John suffered a terrible loss when giant Australian cockroaches ate the entirety of his ...
- NOIP 2012 T5 借教室 [洛谷P1083]
题目描述 在大学期间,经常需要租借教室.大到院系举办活动,小到学习小组自习讨论,都需要 向学校申请借教室.教室的大小功能不同,借教室人的身份不同,借教室的手续也不一样. 面对海量租借教室的信息,我们自 ...
- linux 7 常见命令
修改网卡配置文件,如下:ONBOOT=yesIPADDR=192.168.1.11NETMASK=255.255.255.0NM_CONTROLLED=no重启网卡:systemctl restart ...
- jQuery EasyUI datagrid实现本地分页的方法
http://www.codeweblog.com/jquery-easyui-datagrid%e5%ae%9e%e7%8e%b0%e6%9c%ac%e5%9c%b0%e5%88%86%e9%a1% ...
- JDK安装成功了,环境变量也配置好了,测试代码也可以运行,但是打不开eclipse
解决办法:删除eclipse,重新解压后,将JDK文件夹下的jre文件夹拷贝到eclipse文件夹下,OK
- CSS小记
1.元素居中 (1)水平居中:指定宽度,然后margin auto 即可 .middle{ max-width:400px; //width:400px;//当浏览器被缩小,宽度小于元素宽度时,元素会 ...
- nuget pack
nuget spec nuget setApiKey yourkeynuget pack PluginMvc.Framework.csproj -Prop Configuration=Releasen ...
- Struts2拦截器的应用
拦截器类 public class AdminInterceptor extends AbstractInterceptor { private static final long serialVer ...
- ES+Hbase对接方案概述
方案背景 Hbase的索引方案有很多,越来越多的人开始选择ES+Hbase的方案,其实该方案并没有想象中那么完美,ES并发低,同时查询速度相对Hbase也慢很多,那为什么会选择他呢,它的写入比较快,如 ...
- msmms (一) sms与mms区别
sms与mms区别 SMS,Short Messaging Service短信业务,可以通过手机等移动设备发送文本型短信.SMS这个术语最早在80年代初期出现,但一直到了90年代初才开始进入商用市场, ...