android 关于字符转化问题
16lz
2021-12-04
今日在写android的客户端,发现字符转化是个大问题。
下面是Unicode转UTF-8的转化,便于以后使用
- privatestaticStringdecodeUnicode(StringtheString){
- charaChar;
- intlen=theString.length();
- StringBufferoutBuffer=newStringBuffer(len);
- for(intx=0;x<len;){
- aChar=theString.charAt(x++);
- if(aChar=='\\'){
- aChar=theString.charAt(x++);
- if(aChar=='u'){
- //Readthexxxx
- intvalue=0;
- for(inti=0;i<4;i++){
- aChar=theString.charAt(x++);
- switch(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:
- thrownewIllegalArgumentException(
- "Malformed\\uxxxxencoding.");
- }
- }
- outBuffer.append((char)value);
- }else{
- if(aChar=='t')
- aChar='\t';
- elseif(aChar=='r')
- aChar='\r';
- elseif(aChar=='n')
- aChar='\n';
- elseif(aChar=='f')
- aChar='\f';
- outBuffer.append(aChar);
- }
- }else
- outBuffer.append(aChar);
- }
- returnoutBuffer.toString();
- }
更多相关文章
- AIDL使用
- JS判断客户端类型(ipad,iphone,android)
- android案例
- 开源中国-android软件资源整理
- android客户端发送XML数据至服务器
- Android客户端GPS定位
- Android:Service
- 2011年沈大海讲师Android的新浪微博客户端开发教程
- 用Android搭建客户端 手机和服务器交互开发实例