以下是一个加查的function你的功能可以从下面的方法中改写实现!function isASCII(str) {
if (str == null || str==''){
return false;
} else {
var strlen = str.length;
var i = 0;
for (i=0;i < strlen;i++) {
if (str.substring(i,i+1) >= 'a' && str.substring(i,i+1) <= 'z') continue;
if (str.substring(i,i+1) >= 'A' && str.substring(i,i+1) <= 'Z') continue;
if (str.substring(i,i+1) >= '0' && str.substring(i,i+1) <= '9') continue;
if (str.substring(i,i+1) == '_' ) continue;
return false;
}
}
return true;
}
if (str == null || str==''){
return false;
} else {
var strlen = str.length;
var i = 0;
for (i=0;i < strlen;i++) {
if (str.substring(i,i+1) >= 'a' && str.substring(i,i+1) <= 'z') continue;
if (str.substring(i,i+1) >= 'A' && str.substring(i,i+1) <= 'Z') continue;
if (str.substring(i,i+1) >= '0' && str.substring(i,i+1) <= '9') continue;
if (str.substring(i,i+1) == '_' ) continue;
return false;
}
}
return true;
}
char buf[]="abcdef";
int asc_val;for(int i=0;i<strlen(buf);i++)
{
asc_val = buf[i];//这个就是ASC值
asc_val += 5;//增加
buf[i] = asc_val;
....
}只要注意汉字为两个字节,asc值如果是有符号的,则可能会有负数,无符号的,则存在大于127 自己验证一下就知道了
比如:"f"的ASCII值为15,再将ASCII为20转换成对应的字符。
在线等待!急啊!!
System.out.println((int)c);
System.out.println((char)65);--------------------------
结果是
65
A
public static void main(String[] args) {
String oldStr = "abc";
byte[] bytes = oldStr.getBytes();
for (int i = 0; i < bytes.length; i++) {
bytes[i] += 5;
}
String newStr = new String(bytes);
System.out.println("oldStr = " + oldStr);
System.out.println("newStr = " + newStr);
}
}
上面的代码可以用来将字符串中的每个字符的ASCCI加5,有不足之处欢迎指正