209 throw new UnsupportedOperationException ("remove not supported");
210 }
211 }
212
213 public Iterator<String> keys () {
214 return new ParserIterator (false);
215 }
216
217 public Iterator<String> values () {
218 return new ParserIterator (true);
219 }
220
221 public String toString () {
222 Iterator<String> k = keys();
223 StringBuilder sb = new StringBuilder();
224 sb.append("{size=").append(asize).append(" nkeys=").append(nkeys)
225 .append(' ');
226 for (int i=0; k.hasNext(); i++) {
227 String key = k.next();
228 String val = findValue (i);
229 if (val != null && "".equals (val)) {
230 val = null;
231 }
232 sb.append(" {").append(key).append(val == null ? "" : "," + val)
233 .append('}');
234 if (k.hasNext()) {
235 sb.append (',');
236 }
237 }
238 sb.append (" }");
239 return sb.toString();
240 }
241
242 public int findInt(String k, int Default) {
243 try {
244 return Integer.parseInt(findValue(k, String.valueOf(Default)));
245 } catch (Throwable t) {
246 return Default;
247 }
248 }
249 /*
|
209 throw new UnsupportedOperationException ("remove not supported");
210 }
211 }
212
213 public Iterator<String> keys () {
214 return new ParserIterator (false);
215 }
216
217 public Iterator<String> values () {
218 return new ParserIterator (true);
219 }
220
221 public String toString () {
222 Iterator<String> k = keys();
223 StringBuilder sb = new StringBuilder();
224 sb.append("{size=").append(asize).append(" nkeys=").append(nkeys)
225 .append(' ');
226 for (int i=0; k.hasNext(); i++) {
227 String key = k.next();
228 String val = findValue (i);
229 if (val != null && val.isEmpty()) {
230 val = null;
231 }
232 sb.append(" {").append(key).append(val == null ? "" : "," + val)
233 .append('}');
234 if (k.hasNext()) {
235 sb.append (',');
236 }
237 }
238 sb.append (" }");
239 return sb.toString();
240 }
241
242 public int findInt(String k, int Default) {
243 try {
244 return Integer.parseInt(findValue(k, String.valueOf(Default)));
245 } catch (Throwable t) {
246 return Default;
247 }
248 }
249 /*
|