package com.macfaq.net.www.content.text; import java.net.*; import java.io.*; import java.util.*; import com.macfaq.io.*; public class tab_separated_values extends ContentHandler { public Object getContent(URLConnection uc) throws IOException { String theLine; Vector v = new Vector(); InputStreamReader isr = new InputStreamReader(uc.getInputStream()); SafeBufferedReader in = new SafeBufferedReader(isr); while ((theLine = in.readLine()) != null) { String[] linearray = lineToArray(theLine); v.addElement(linearray); } return v; } private String[] lineToArray(String line) { int numFields = 1; for (int i = 0; i < line.length(); i++) { if (line.charAt(i) == '\t') numFields++; } String[] fields = new String[numFields]; int position = 0; for (int i = 0; i < numFields; i++) { StringBuffer buffer = new StringBuffer(); while (position < line.length() && line.charAt(position) != '\t') { buffer.append(line.charAt(position)); position++; } fields[i] = buffer.toString(); position++; } return fields; } }