CharSeparatedValues { public CsvReader reader(final Reader preader) throws IOException { PushbackReader reader = new PushbackReader(preader); int firstChar = reader.read(); if (firstChar != UTF_BOM && firstChar >= 0) { reader.unread(firstChar); } return readerNoBOMILEL(reader); } CharSeparatedValues(final char separator);  CharSeparatedValues(final char separator, final char... extraCharsToEscape); void writeCsvRow(final Appendable writer, final Object... elems); @SafeVarargs final String toCsvRowString(final Object... elems); void writeCsvRowNoEOL(final Appendable writer, final Object... elems); void writeCsvRow2(final Appendable writer, final Object obj, final Object... elems); void writeCsvRow(final Appendable writer, final long... elems); void writeCsvRowNoEOL(final long[] elems, final Appendable writer); void writeCsvRow(final Appendable writer, final Iterable<?> elems); void writeCsvRowNoEOL(final Iterable<?> elems, final Appendable writer); T read(final File file, final Charset charset,
          final CsvMapHandler<T> handler); T read(final File file, final Charset charset,
          final CsvHandler<T> handler); List<Map<String, String>> read(final Reader preader); T read(final Reader preader,
          final CsvMapHandler<T> handler); List<String> readRow(final Reader reader); T readRow(final Reader reader, final CsvRowHandler<T> handler); T read(final Reader preader,
          final CsvHandler<T> handler); T readNoBom(final PushbackReader reader, final CsvHandler<T> handler); Iterable<Iterable<String>> asIterable(final Reader preader); Iterable<CharSequence> singleRow(final Reader preader); CsvReader reader(final Reader preader); @Deprecated CsvReader readerILEL(final Reader preader); CsvReader readerNoBOM(final PushbackReader reader); @Deprecated CsvReader readerNoBOMILEL(final PushbackReader reader); CsvWriter writer(final Writer writer); void writeCsvElement(final CharSequence elem, final Appendable writer); static void writeQuotedCsvElement(final CharSequence elem, final Appendable writer); static void writeQuotedElementContent(final CharSequence elem,
          final int start, final int end, final Appendable writer); static void writeQuotedChar(final char c, final Appendable writer); CharSequence toCsvElement(final CharSequence elem); String toCsvElement(final String elem); @CheckReturnValue int readCsvElement(final Reader reader, final StringBuilder addElemTo, final long lineNr); @Override String toString(); static final int UTF_BOM; }
@Test public void testCsvReader3() throws IOException, CsvParseException { CharSeparatedValues csv = new CharSeparatedValues(' '); CsvReader reader = csv.reader(new StringReader("a b c\nd e")); int nrElems = reader.skipRow(); Assert.assertEquals(3, nrElems); nrElems = reader.skipRow(); Assert.assertEquals(2, nrElems); }