Java实现的utf8 gbk unic ode编码相互转换的代码public static String GBK2Unicode(String str) {
StringBuffer result=new StringBuffer();for(int i=0; i s tr.length(); i++) {c har c hr 1=(c har) str.c harAt(i);if(!isNeedConvert(chr 1)) {result.append(chr 1);c ontinue;result.append( \\u+Integer.toHexString((int)c hr 1));return result.toString();
*@param dataStr
*@return Stringpublic static String Unicode2GBK(String dataStr) {int index=0;
StringBuffer buffer=new StringBuffer();int li_len=dataStr.length();while(index li_len) {if(index=li_len- 1
| | ! \\u.equals(dataStr.subs tring(index, index+2))) {buffer.append(dataStr.charAt(index));index++;c ontinue;
String charStr=
charStr=dataStr.substring(index+2, index+6);char letter=(char) Integer.pars eInt(charStr, 16);buffer.app end(letter);index+=6;return buffer.toString();public static boolean isNeedConvert(char para) {r eturn((p ar a(0 x 00 F F)) !=p ar a);
*utf-8转unic ode
*@param inStr
*@return Stringpublic static String utf8ToUnicode(String inStr) {c har[]myBuffer=inStr.toCharArray();
StringBuffer sb=new StringBuffer();for(int i=0; i inStr.length(); i++) {
UnicodeBlock ub=UnicodeBlock.of(myBuffer[i]);if(ub==UnicodeBlock.BASIC_LATIN) {sb.append(myBuffer[i]);
} else if(ub==UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {int j=(int)myBuffer[i] -65248;sb.append((char)j);
} els e {short s=(short)myBuffer[i];
String hexS=Integer.toHexString(s);
String unicode=\\u+hexS;sb.append(unic ode.toLow erCas e());return sb.toString();
*@param theString
*@return Stringpublic static String unicodeToUtf8(String theString) {char aChar;int len=theString.length();
String Buffer outBuffer=new StringBuffer(len);for(int x=0;x len;) {aChar=theS tring.c harAt(x++);if(aChar==‘\\’) {aChar=theS tring.c harAt(x++);if(aChar==‘u’) {
//Read the xxxxint value=0;for(int i=0; i i++) {aChar=theS tring.c harAt(x++);sw itc h(aChar) {case ‘0’ :case ‘1’ :
case ‘2’ :case ‘3’ :case ‘4’ :case ‘5’ :case ‘6’ :case ‘7’ :case ‘8’ :case ‘9’ :value=(value 4)+aChar- ‘0’ ;break;case ‘a’ :case ‘b’ :case ‘c’ :case ‘d’ :case ‘e’ :case ‘f’ :value=(value 4)+10+aChar- ‘a’ ;break;case ‘A’ :case ‘B’ :case ‘C’ :case ‘D’ :
case ‘E’ :case ‘F’ :value=(value 4)+10+aChar- ‘A’ ;break;default:throw new IllegalArgumentExc eption(Malformed\\uxxxx enc oding.outBuffer.append((c har)value);
} els e {if(aChar==‘t’)aChar=‘\t’ ;els e if(aChar==‘r’)aChar=‘\r’ ;els e if(aChar==‘n’)aChar=‘\n’ ;els e if(aChar==‘f’)aChar=‘\f’ ;outBuffer.app end(aChar);
} els eoutBuffer.app end(aChar);return outBuffer.to String();
}
无忧云怎么样?无忧云值不值得购买?无忧云,无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,主要销售国内、中国香港、国外服务器产品,线路有腾讯云国外线路、自营香港CN2线路等,都是中国大陆直连线路,非常适合免备案建站业务需求和各种负载较高的项目,同时国内服务器也有多个BGP以及高防节点。目前,四川雅安机房,4...
LetBox此次促销依然是AMD Ryzen处理器+NVME硬盘+HDD大硬盘,以前是5TB月流量,现在免费升级到10TB月流量。另外还有返余额的活动,如果月付,月付多少返多少;如果季付或者半年付,返25%;如果年付,返10%。依然全部KVM虚拟化,可自定义ISO系统。需要大硬盘vps、大流量vps、便宜AMD VPS的朋友不要错过了。不过LetBox对帐号审核严格,最好注册邮箱和paypal帐号...
华纳云(HNCloud Limited)是一家专业的全球数据中心基础服务提供商,总部在香港,隶属于香港联合通讯国际有限公司,拥有香港政府颁发的商业登记证明,保证用户的安全性和合规性。 华纳云是APNIC 和 ARIN 会员单位。主要提供香港和美国机房的VPS云服务器和独立服务器。商家支持支付宝、网银、Paypal付款。华纳云主要面向国内用户群,所以线路质量还是不错的,客户使用体验总体反响还是比较好...