String ss="hello";
byte[] buff=ss.getBytes();
int f=buff.length;
System.out.println(f);
字节长度。一个中文是3。其他是1
1、获取url中的参数
创建string
String urls= "http://www.yxtribe.com/yuanxinbuluo/weixin/getJsp?url=wechatweb/business-style-five¶m=330&appFlg=1";
String param= URLRequest(urls).get("param");//是330
实现方法
/*** 解析出url参数中的键值对* 如 "index.jsp?Action=del&id=123",解析出Action:del,id:123存入map中* @param URL url地址* @return url请求参数部分*/
public static Map<String, String> URLRequest(String URL)
{Map<String, String> mapRequest = new HashMap<String, String>();String[] arrSplit=null;String strUrlParam=TruncateUrlPage(URL);if(strUrlParam==null){return mapRequest;}//每个键值为一组 www.2cto.comarrSplit=strUrlParam.split("[&]");for(String strSplit:arrSplit){String[] arrSplitEqual=null;arrSplitEqual= strSplit.split("[=]");//解析出键值if(arrSplitEqual.length>1){//正确解析mapRequest.put(arrSplitEqual[0], arrSplitEqual[1]);}else{if(arrSplitEqual[0]!=""){//只有参数没有值,不加入mapRequest.put(arrSplitEqual[0], "");}}}return mapRequest;
}/*** 去掉url中的路径,留下请求参数部分* @param strURL url地址* @return url请求参数部分*/
private static String TruncateUrlPage(String strURL)
{String strAllParam=null;String[] arrSplit=null;strURL=strURL.trim();arrSplit=strURL.split("[?]");if(strURL.length()>1){if(arrSplit.length>1){if(arrSplit[1]!=null){strAllParam=arrSplit[1];}}}return strAllParam;
}
//处理二维码数据返回 public static String dealWithQrStr(String qrStr) {String useStr = qrStr;//处理后,有用的字符串try {if(qrStr.startsWith("http://") || qrStr.startsWith("https://")){Uri uri = Uri.parse(qrStr);String hostStr = uri.getHost();String device_mac = uri.getQueryParameter("mac");String device_code = uri.getQueryParameter("id");String device_imei = uri.getQueryParameter("imei");if (!IsNullString(device_mac) && !device_mac.equalsIgnoreCase("null")){if(!device_mac.contains(":")){StringBuilder builder=new StringBuilder(device_mac);for (int i = 0; i <builder.length() ; i++) {if(i%3==0){ //对mac地址插入:号builder.insert(i,":");}}builder.delete(0,1);useStr = builder.toString();}else{useStr = device_mac;}}else if(!IsNullString(device_code) && !device_code.equals("null")){useStr = device_code;}else if(!IsNullString(device_imei) && !device_imei.equals("null")){useStr = device_imei;}}} catch (Exception e) {e.printStackTrace();}return useStr; }//判断字符是否为空或者没数据 public static boolean IsNullString(String str) {if (str != null && !TextUtils.isEmpty(str) && !TextUtils.equals("", str.trim())) {return false;} else {return true;} }
2、验证邮箱格式,电话格式,密码格式
public static boolean isMobileNO(String mobiles) {
String telRegex = "13\\d{9}|14[57]\\d{8}|15[012356789]\\d{8}|18[012356789]\\d{8}|17[01678]\\d{8}";
if (TextUtils.isEmpty(mobiles)) return false;
else return mobiles.matches(telRegex);
}
public static boolean passWordVerify(String pass) {
Pattern p = Pattern.compile("^[A-Za-z0-9]{6,12}$");
//Pattern p = Pattern.compile("^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z_]{6,12}$");
return p.matcher(pass).matches();
}
public static boolean mailAddressVerify(String mailAddress) {
String emailExp = "^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$";
Pattern p = Pattern.compile(emailExp);
return p.matcher(mailAddress).matches();
}
3、截取字符串中键值对的值
String data ="Address[addressLines=[0:\"广东省东莞市健升大厦\"],feature=健升大厦,admin=广东省,sub-admin=null,locality=东莞市,thoroughfare=null,postalCode=null,countryCode=CN,countryName=中国,hasLatitude=true, latitude=23.025354,hasLongitude=true,longitude=113.748738,phone=null,url=null,extras=Bundle[mParcelledData.dataSize=92]]";
int startCity = data.indexOf("locality=") + "locality=".length();
int endCity = data.indexOf(",", startCity);
String city = data.substring(startCity, endCity);//获取市
int startPlace = data.indexOf("feature=") + "feature=".length();
int endplace = data.indexOf(",", startPlace);
String place = data.substring(startPlace, endplace);//获取地址
LgqLogutil.e(city+place);
04-24 14:53:27.140 20566-20566/com.tianxin.ttttest E/lgq: onCreate----东莞市健升大厦
4、去空格
s = s.replaceAll("\r|\n", "");
5、替换字符串
String abtest = "123abc";
String result ="";
result = abtest.replace("ab","hhhh");//是"123hhhhc"
6、根据游标截取字符串
String abtest = "123abc";
String result ="";
// result = abtest.substring(3);//="abc
result = abtest.substring(3,4);//="a
7、去空格,替换字符
-
String str = " hell , 午饭,,晚饭 ";
-
String str2 = str.replaceAll(" ", "");
Pattern pattern = Pattern.compile("\t|\r|\n|\\s*|\\�"); Matcher matcher = pattern.matcher(src); dest = matcher.replaceAll("");
8、bundleToString
private static String bundleToString(Bundle bundle) {if (bundle == null) {return "null";}final StringBuilder sb = new StringBuilder();for (String key: bundle.keySet()) {sb.append(key).append("=>").append(bundle.get(key)).append("\n");}return sb.toString();
}