BufferedReader markSupported

4 respostas
Guitar_Men

Galera preciso que o meu stream tenha suporte a marcações (mark) porém em alguns arquivos o markSuported retorna true e em outros retorna false. Existe alguma forma de forçar isso ??

Valew…

4 Respostas

Guitar_Men

Alguém ?? Realmente estou precisando disso…

E

Não. Sinto muito.

Guitar_Men

Não. Sinto muito.

Humm, na verdade resolvi usando o RandomAccessFile, mas por questão de curiosidade, o que torna esse flag false ?? É algum atributo do arquivo que faz ele não suportar marcadores ?? Alguém saberia explicar ??

E

Fuçando as classes que declaram um método “public boolean markSupported” no fonte do JDK, temos as seguintes classes e interfaces:

com.sun.corba.se.impl.encoding.CDRInputStream
com.sun.corba.se.impl.encoding.CDRInputStreamBase
com.sun.corba.se.impl.encoding.IDLJavaSerializationInputStream
com.sun.corba.se.impl.encoding.WrapperInputStream
com.sun.corba.se.impl.io.IIOPInputStream
com.sun.org.apache.xerces.internal.impl.XMLEntityManager
com.sun.org.apache.xerces.internal.impl.io.ASCIIReader
com.sun.org.apache.xerces.internal.impl.io.UCSReader
com.sun.org.apache.xerces.internal.impl.io.UTF8Reader
com.sun.tools.hat.internal.parser.PositionDataInputStream
com.sun.tools.hat.internal.parser.PositionInputStream
com.sun.xml.internal.dtdparser.XmlReader
com.sun.xml.internal.messaging.saaj.packaging.mime.util.BASE64DecoderStream
com.sun.xml.internal.messaging.saaj.packaging.mime.util.QPDecoderStream
com.sun.xml.internal.messaging.saaj.packaging.mime.util.UUDecoderStream
com.sun.xml.internal.messaging.saaj.util.TeeInputStream
java.io.BufferedInputStream
java.io.BufferedReader
java.io.ByteArrayInputStream
java.io.CharArrayReader
java.io.FilterInputStream
java.io.FilterReader
java.io.InputStream
java.io.PushbackInputStream
java.io.PushbackReader
java.io.Reader
java.io.StringReader
java.util.zip.DeflaterInputStream
java.util.zip.InflaterInputStream
javax.sound.sampled.AudioInputStream
sun.awt.image.PNGImageDecoder
sun.net.httpserver.ChunkedInputStream
sun.net.httpserver.FixedLengthInputStream
sun.net.httpserver.SSLStreams	
sun.net.www.MeteredStream
sun.net.www.http.KeepAliveStream
sun.rmi.transport.proxy.HttpSendInputStream

Muitas delas simplesmente são implementadas como “return false;” ou “return true;” ou, quando são wrappers de outros readers ou streams, o resultado do reader ou stream que foi ‘wrappado’. Olhe os fontes.

Criado 10 de setembro de 2009
Ultima resposta 10 de set. de 2009
Respostas 4
Participantes 2