1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/mobile/android/thirdparty/org/json/simple/ItemList.java Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,147 @@ 1.4 +/* 1.5 + * $Id: ItemList.java,v 1.1 2006/04/15 14:10:48 platform Exp $ 1.6 + * Created on 2006-3-24 1.7 + */ 1.8 +package org.json.simple; 1.9 + 1.10 +import java.util.ArrayList; 1.11 +import java.util.List; 1.12 +import java.util.StringTokenizer; 1.13 + 1.14 +/** 1.15 + * |a:b:c| => |a|,|b|,|c| 1.16 + * |:| => ||,|| 1.17 + * |a:| => |a|,|| 1.18 + * @author FangYidong<fangyidong@yahoo.com.cn> 1.19 + */ 1.20 +public class ItemList { 1.21 + private String sp=","; 1.22 + List items=new ArrayList(); 1.23 + 1.24 + 1.25 + public ItemList(){} 1.26 + 1.27 + 1.28 + public ItemList(String s){ 1.29 + this.split(s,sp,items); 1.30 + } 1.31 + 1.32 + public ItemList(String s,String sp){ 1.33 + this.sp=s; 1.34 + this.split(s,sp,items); 1.35 + } 1.36 + 1.37 + public ItemList(String s,String sp,boolean isMultiToken){ 1.38 + split(s,sp,items,isMultiToken); 1.39 + } 1.40 + 1.41 + public List getItems(){ 1.42 + return this.items; 1.43 + } 1.44 + 1.45 + public String[] getArray(){ 1.46 + return (String[])this.items.toArray(); 1.47 + } 1.48 + 1.49 + public void split(String s,String sp,List append,boolean isMultiToken){ 1.50 + if(s==null || sp==null) 1.51 + return; 1.52 + if(isMultiToken){ 1.53 + StringTokenizer tokens=new StringTokenizer(s,sp); 1.54 + while(tokens.hasMoreTokens()){ 1.55 + append.add(tokens.nextToken().trim()); 1.56 + } 1.57 + } 1.58 + else{ 1.59 + this.split(s,sp,append); 1.60 + } 1.61 + } 1.62 + 1.63 + public void split(String s,String sp,List append){ 1.64 + if(s==null || sp==null) 1.65 + return; 1.66 + int pos=0; 1.67 + int prevPos=0; 1.68 + do{ 1.69 + prevPos=pos; 1.70 + pos=s.indexOf(sp,pos); 1.71 + if(pos==-1) 1.72 + break; 1.73 + append.add(s.substring(prevPos,pos).trim()); 1.74 + pos+=sp.length(); 1.75 + }while(pos!=-1); 1.76 + append.add(s.substring(prevPos).trim()); 1.77 + } 1.78 + 1.79 + public void setSP(String sp){ 1.80 + this.sp=sp; 1.81 + } 1.82 + 1.83 + public void add(int i,String item){ 1.84 + if(item==null) 1.85 + return; 1.86 + items.add(i,item.trim()); 1.87 + } 1.88 + 1.89 + public void add(String item){ 1.90 + if(item==null) 1.91 + return; 1.92 + items.add(item.trim()); 1.93 + } 1.94 + 1.95 + public void addAll(ItemList list){ 1.96 + items.addAll(list.items); 1.97 + } 1.98 + 1.99 + public void addAll(String s){ 1.100 + this.split(s,sp,items); 1.101 + } 1.102 + 1.103 + public void addAll(String s,String sp){ 1.104 + this.split(s,sp,items); 1.105 + } 1.106 + 1.107 + public void addAll(String s,String sp,boolean isMultiToken){ 1.108 + this.split(s,sp,items,isMultiToken); 1.109 + } 1.110 + 1.111 + /** 1.112 + * @param i 0-based 1.113 + * @return 1.114 + */ 1.115 + public String get(int i){ 1.116 + return (String)items.get(i); 1.117 + } 1.118 + 1.119 + public int size(){ 1.120 + return items.size(); 1.121 + } 1.122 + 1.123 + public String toString(){ 1.124 + return toString(sp); 1.125 + } 1.126 + 1.127 + public String toString(String sp){ 1.128 + StringBuffer sb=new StringBuffer(); 1.129 + 1.130 + for(int i=0;i<items.size();i++){ 1.131 + if(i==0) 1.132 + sb.append(items.get(i)); 1.133 + else{ 1.134 + sb.append(sp); 1.135 + sb.append(items.get(i)); 1.136 + } 1.137 + } 1.138 + return sb.toString(); 1.139 + 1.140 + } 1.141 + 1.142 + public void clear(){ 1.143 + items.clear(); 1.144 + } 1.145 + 1.146 + public void reset(){ 1.147 + sp=","; 1.148 + items.clear(); 1.149 + } 1.150 +}