Package fr.gpmsi
Class PreambleRemovedReader
- java.lang.Object
-
- java.io.Reader
-
- java.io.FilterReader
-
- fr.gpmsi.PreambleRemovedReader
-
- All Implemented Interfaces:
Closeable,AutoCloseable,Readable
public class PreambleRemovedReader extends FilterReader
Reader qui ne renvoie des données que après qu'une ligne spéciale a été rencontrée. Par défaut la ligne "spéciale" est une ligne vide, mais on peut aussi donner au moment de la construction du Reader une expression régulière pour reconnaître la ligne spéciale. Par exemple si la ligne spéciale est composée de caractères '-', on peut donner l'expression "^-+$" Utile pour sauter les premières lignes d'un fichier csv, par exemple.
-
-
Field Summary
-
Fields inherited from class java.io.FilterReader
in
-
-
Constructor Summary
Constructors Constructor Description PreambleRemovedReader(Reader in)Constructeur qui prend un Reader en entrée, et reconnaît en ligne "spéciale" une ligne vide.PreambleRemovedReader(Reader in, String motif)Constructeur qui prend un Reader en entrée, et reconnaît en ligne "spéciale" une ligne qui répond au motif donné.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Fermeturevoidmark(int readAheadLimit)Non supporté, envoie une exceptionbooleanmarkSupported()Officiellement nous ne supportons pas "mark"intread()intread(char[] cbuf)intread(char[] cbuf, int off, int len)booleanready()voidreset()Non supporté, envoie une exceptionlongskip(long n)-
Methods inherited from class java.io.Reader
nullReader, read, transferTo
-
-
-
-
Constructor Detail
-
PreambleRemovedReader
public PreambleRemovedReader(Reader in)
Constructeur qui prend un Reader en entrée, et reconnaît en ligne "spéciale" une ligne vide.- Parameters:
in- le Reader
-
PreambleRemovedReader
public PreambleRemovedReader(Reader in, String motif)
Constructeur qui prend un Reader en entrée, et reconnaît en ligne "spéciale" une ligne qui répond au motif donné.- Parameters:
in- le Readermotif- le motif Regex pour reconnaître la ligne spéciale, par ex "^-+$" reconnaît comme ligne spéciale une ligne qui est uniquement formée de '-'
-
-
Method Detail
-
read
public int read() throws IOException- Overrides:
readin classFilterReader- Throws:
IOException
-
read
public int read(char[] cbuf) throws IOException- Overrides:
readin classReader- Throws:
IOException
-
read
public int read(char[] cbuf, int off, int len) throws IOException- Overrides:
readin classFilterReader- Throws:
IOException
-
skip
public long skip(long n) throws IOException- Overrides:
skipin classFilterReader- Throws:
IOException
-
ready
public boolean ready() throws IOException- Overrides:
readyin classFilterReader- Throws:
IOException
-
markSupported
public boolean markSupported()
Officiellement nous ne supportons pas "mark"- Overrides:
markSupportedin classFilterReader
-
mark
public void mark(int readAheadLimit) throws IOExceptionNon supporté, envoie une exception- Overrides:
markin classFilterReader- Throws:
IOException- Envoyée systématiquement
-
reset
public void reset() throws IOExceptionNon supporté, envoie une exception- Overrides:
resetin classFilterReader- Throws:
IOException- Envoyée systématiquement
-
close
public void close() throws IOExceptionFermeture- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classFilterReader- Throws:
IOException
-
-