Java字符串将不是字符数字的字符转换为十六进制字符

char data[] = "asdfasdf中国123123\n<p>asdfasdf";
String content = "";
for(int j=0;j<data.length;j++){
//将每个不是字符,数字的字符转换为Int类型的数值字符串
String s = data[j]+"";
int value = (int)data[j];
if(!((48<=value&& value<=57) || (97<=value&& value<=122) || (65<=value&& value<=90))){
s = Integer.toHexString(Integer.parseInt(value+""));
if(s.length()==1){
s = "\\u000" + s;
}else if(s.length()==2){
s = "\\u00" + s;
}else if(s.length()==3){
s = "\\u0" + s;
}else{
s = "\\u" + s;
}
}
content = content + s;
}
System.out.println(content);

你可能感兴趣的:(java,J#)