public String[][] getAllValues() throws IOException {
        ArrayList<String[]> records = new ArrayList<String[]>();
        String[] values;
        String[][] ret = null;
        while ((values = getLine()) != null) {
            records.add(values);
        }
        if (records.size() > 0) {
            ret = new String[records.size()][];
            records.toArray(ret);
        }
        return ret;
    }