根据双字节码显示文本 自己计算出文字的unicode值,通过String.fromCharCode来生成内容alert(String.fromCharCode(31895)) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 好 实际上我想要以下Java以Js实现,那个写到new String(bytes)这里不知道该怎么办了 String.fromCharCode在这里应该怎么使用?public static String decode(String hexStr){ String[] ah=hexStr.split(","); int len=ah.length; byte[] bytes=new byte[len]; for(int i=0,t;i<len;i++){ t=Integer.parseInt(ah[i],16); if(t<128){ bytes[i]=(byte)t; }else{ t-=256; bytes[i+1]=(byte)t; t=Integer.parseInt(ah[i+1],16); bytes[i]=(byte)(t-256); i++; } } return new String(bytes); }System.out.println(decode("a4,b9,20,20,20,20,f2,d0,20,20,20,20,da,c4,20,20,20,20,dd,c8")); alert(String.fromCharCode(31895))//粗alert('粗'.charCodeAt(0))//31895 版主大人可能还没理解我的意思如下function decode(hexStr){ var ah=hexStr.split(','); var len=ah.length; var bytes=[]; for(var i=0,t;i<len;i++){ t=parseInt(ah[i],16); if(t<128){ bytes[i]=t; }else{ t-=256; bytes[i+1]=t; t=parseInt(ah[i+1],16); bytes[i]=(t-256); i++; } } //var s=bytes.join(','); 这里是测试代码 //var s=怎么操作bytes得到粗这个字 hexStr是 a4,b9,20,20,20,20,f2,d0,20,20,20,20,da,c4,20,20,20,20,dd,c8 //想得到 s="工 序 内 容" 这段内容 return s;}不局限于上面的函数 用其他js方法得出就行 也就是一个function 我输入'a4,b9,20,20,20,20,f2,d0,20,20,20,20,da,c4,20,20,20,20,dd,c8'return '工 序 内 容'; function decode(hexStr){ var ah=hexStr.split(','); var len=ah.length; var bytes=[]; for(var i=0,t;i<len;i++){ t=parseInt(ah[i],16); if(t<128){ bytes[i]=t; }else{ t-=256; bytes[i+1]=t; t=parseInt(ah[i+1],16); bytes[i]=(t-256); i++; } } var s=//怎么操作bytes, 参数hexStr=‘a4,b9,20,20,20,20,f2,d0,20,20,20,20,da,c4,20,20,20,20,dd,c8’ //想return s='工 序 内 容' 这段内容 return s;} 事情没有那么简单将-76,-42显示成汉字“粗” ,那么这个“粗”是 gbk 编码的而 js 总是以 unicode 编码处理汉字的 不是无解,而是比较麻烦你需要把汉字转换成 UCS-2 编码,然后按无符号高位在前短整型读出这样才能给 String.fromCharCode 用 这个需要一个GBK与Unicode的对照表吧。。 不行就用ajax发送你这种内容到java去,java解码后再返回来给js用也行java不知道,直接解码你这种内容不知道你怎么得来的,用的什么字符串进行编码的 GBK与Unicode转换这里有篇别人写的转换表可以参考http://bbs.blueidea.com/forum.php?mod=viewthread&tid=2857972 花了一下午研究了一下,帮你写了个发在这儿了http://blog.csdn.net/vnvlyp/article/details/25827999 js 嵌套引号的问题 表单验证 求助 关于在表格里添加一个按钮 首页图片自动翻页js代码,理解了基本函数功能,但不知具体细节,请大家帮忙深入理解 请问能不能自定义鼠标形状? 莱鸟问个问题别见笑 求助!一个关于弹出对话框的问题!! 【Firing fox,I crashed: How to write HTML to iframe using JS】 下拉框问题的再续(可根据输入内容挑选下拉项) 如何取弹了窗口的值啊? 关于js刷新 请教一个js时间下拉。日期今明后三天,时间延后半小时。很特殊
public static String decode(String hexStr){
String[] ah=hexStr.split(",");
int len=ah.length;
byte[] bytes=new byte[len];
for(int i=0,t;i<len;i++){
t=Integer.parseInt(ah[i],16);
if(t<128){
bytes[i]=(byte)t;
}else{
t-=256;
bytes[i+1]=(byte)t;
t=Integer.parseInt(ah[i+1],16);
bytes[i]=(byte)(t-256);
i++;
}
}
return new String(bytes);
}
System.out.println(decode("a4,b9,20,20,20,20,f2,d0,20,20,20,20,da,c4,20,20,20,20,dd,c8"));
alert('粗'.charCodeAt(0))//31895
如下
function decode(hexStr){
var ah=hexStr.split(',');
var len=ah.length;
var bytes=[];
for(var i=0,t;i<len;i++){
t=parseInt(ah[i],16);
if(t<128){
bytes[i]=t;
}else{
t-=256;
bytes[i+1]=t;
t=parseInt(ah[i+1],16);
bytes[i]=(t-256);
i++;
}
}
//var s=bytes.join(','); 这里是测试代码
//var s=怎么操作bytes得到粗这个字 hexStr是 a4,b9,20,20,20,20,f2,d0,20,20,20,20,da,c4,20,20,20,20,dd,c8
//想得到 s="工 序 内 容" 这段内容
return s;
}不局限于上面的函数 用其他js方法得出就行
也就是一个function 我输入'a4,b9,20,20,20,20,f2,d0,20,20,20,20,da,c4,20,20,20,20,dd,c8'
return '工 序 内 容';
var ah=hexStr.split(',');
var len=ah.length;
var bytes=[];
for(var i=0,t;i<len;i++){
t=parseInt(ah[i],16);
if(t<128){
bytes[i]=t;
}else{
t-=256;
bytes[i+1]=t;
t=parseInt(ah[i+1],16);
bytes[i]=(t-256);
i++;
}
}
var s=//怎么操作bytes, 参数hexStr=‘a4,b9,20,20,20,20,f2,d0,20,20,20,20,da,c4,20,20,20,20,dd,c8’
//想return s='工 序 内 容' 这段内容
return s;
}
将-76,-42显示成汉字“粗” ,那么这个“粗”是 gbk 编码的
而 js 总是以 unicode 编码处理汉字的
你需要把汉字转换成 UCS-2 编码,然后按无符号高位在前短整型读出
这样才能给 String.fromCharCode 用
http://bbs.blueidea.com/forum.php?mod=viewthread&tid=2857972
http://blog.csdn.net/vnvlyp/article/details/25827999