1.最先对String的分割处理,遇到的是例如(* ^ :| , . )这些特殊的分割标记符时,需要在调用split()时传入参数前转义,如:string.split("\\|");这样之后才能正常分割string。
2.蛋疼的分隔符处于末尾,如:65465|41564|21312|qeiw| ,但是这个时候末尾的分隔符后还带着一个""空字符串,按照正常逻辑String[] byte=string.split("\\|"); byte[0]="65465",byte[1]="41564",byte[3]="21312",byte[4]="qeiw",byte[5]="",没错,一般没有关注过这个点的朋友就陷进去了 其实结果并不是这样。它会因为最后一位是分隔符"|"而导致无法按正常逻辑分割,导致byte[4]以前的所有分割都正常,byte[4],byte[5]都会存在分割问题,此时只需设置好 String []info=string.split("\\|",-1),在原方法内多加一个参数-1,即可通知分割操作不忽略任何一个分隔符。
3.还有一个傻傻的操作就是判断这个字符串后面是否为标志符号,若是的话手动添加一个字符串s或者任意其他字符串,直到后续分割完后判断在让那个值赋值回来即可。这个方法有点投机取巧,还是希望大家用2的方法
if(string.endsWith("|")){
string=string+"s";
}
String []info=param.split("\\|");
u_id=info[0];
gold=info[1];
code=info[2];
type=info[3];
bind=info[4];
name=info[5];
if(name.equals("s")){
name="";
}