Package jp.gr.java_conf.dangan.io
Class CachedInputStream
java.lang.Object
java.io.InputStream
jp.gr.java_conf.dangan.io.CachedInputStream
- All Implemented Interfaces:
Closeable
,AutoCloseable
?L???b?V?????g?p????????????????????????X?g???[???B
BufferedInputStream ???? read?n???\?b?h?? synchronized ???????????????A?????????????????X??????Amark/reset ?? ?L???b?V?????????????????u?????????s?????????????T?|?[?g???????A ?????????????}???????????X?g???[???????\???????A??????????????B
BufferedInputStream ???? read?n???\?b?h?? synchronized ???????????????A?????????????????X??????Amark/reset ?? ?L???b?V?????????????????u?????????s?????????????T?|?[?g???????A ?????????????}???????????X?g???[???????\???????A??????????????B
-- revision history -- $Log: CachedInputStream.java,v $ Revision 1.3 2002/12/05 00:00:00 dangan [maintenance] ?\?[?X???? Revision 1.2 2002/11/02 00:00:00 dangan [bug fix] available() ???u???b?N??????????????????????????????l????????????B Revision 1.1 2002/09/05 00:00:00 dangan [change] EndOfStream ???B???????? read( new byte[0] ) ?? read( byte[] buf, int off, 0 ) ???????l?? InputStream ??????? 0 ?????????????????B Revision 1.0 2002/09/05 00:00:00 dangan add to version control [bug fix] mark() ?? ???}?????? in ???n?? readLimit ???v?Z???????????????A ?v???????? readLimit ???B?????O???}?[?N???u???j???????????????????B read( buf, off, len ) ???? System.arraycopy ???????o???? dst ?? src ???t??????????B [change] EndOfStream ???B???????? read( new byte[0] ) ?? read( buf, off?C0 ) ?? -1 ?????????????C???B [maintenance] ?^?u?p?~ ???C?Z???X????C??
- Version:
- $Revision: 1.3 $
- Author:
- $Author: dangan $
-
Constructor Summary
ConstructorsConstructorDescription?f?t?H???g???T?C?Y???L???b?V???????? CachedInputStream???\?z?????BCachedInputStream
(InputStream in, int cacheSize) ?w?????????T?C?Y???L???b?V???????? CachedInputStream???\?z?????B -
Method Summary
Modifier and TypeMethodDescriptionint
???}???????????X?g???[???????u???b?N??????? ?????????}???????????o?C?g?????????Bvoid
close()
?}???????X?g???[????????A?g?p??????? ?S???????\?[?X???J???????Bvoid
mark
(int readLimit) ???}???????????X?g???[???????????u???}?[?N?????????A reset() ???\?b?h???}?[?N???????_?? ???????????u?? ?????????????????Bboolean
???}???????????X?g???[???? mark() ?? reset() ?? ?T?|?[?g?????????????Bint
read()
???}???????X?g???[?????? 1?o?C?g???f?[?^?? 0?`255 ???}?b?v?????????????Bint
read
(byte[] buffer) ???}???????X?g???[?????? buffer?????????????? ?f?[?^???????????B
?}?????\?b?h?? buffer ?????????????f?[?^?????????????A EndOfStream?????B?????????u???b?N?????Bint
read
(byte[] buffer, int index, int length) ???}???????X?g???[?????? buffer ?? index ???w???????? ???u?? length ?o?C?g?f?[?^???????????B
?}?????\?b?h?? length ?o?C?g???????????A EndOfStream?????B?????????u???b?N?????Bvoid
reset()
???}???????????X?g???[???????????????u???????? mark() ???\?b?h???????o???????????????u???????????Blong
skip
(long length) ???}???????????X?g???[?????f?[?^?? length ?o?C?g???????????B
?}?????\?b?h?? length ?o?C?g???????????? EndOfStream ?????B?????????u???b?N?????BMethods inherited from class java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
Constructor Details
-
CachedInputStream
?f?t?H???g???T?C?Y???L???b?V???????? CachedInputStream???\?z?????B- Parameters:
in
- ?L???b?V?????K?v???????X?g???[??- Throws:
IllegalArgumentException
- in ?? null ??????????
-
CachedInputStream
?w?????????T?C?Y???L???b?V???????? CachedInputStream???\?z?????B- Parameters:
in
- ?L???b?V?????K?v???????X?g???[??cacheSize
- ?L???b?V?????T?C?Y- Throws:
IllegalArgumentException
- cacheSize ?? 0?????????????A in ?? null ??????????
-
-
Method Details
-
read
???}???????X?g???[?????? 1?o?C?g???f?[?^?? 0?`255 ???}?b?v?????????????B- Specified by:
read
in classInputStream
- Returns:
- ?????o?????? 1?o?C?g???f?[?^???????B
???? EndOfStream???B????????????? -1???????B - Throws:
IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-
read
???}???????X?g???[?????? buffer?????????????? ?f?[?^???????????B
?}?????\?b?h?? buffer ?????????????f?[?^?????????????A EndOfStream?????B?????????u???b?N?????B- Overrides:
read
in classInputStream
- Parameters:
buffer
- ???????????f?[?^???i?[???????????o?C?g?z??- Returns:
- buffer ?????????????f?[?^?????o?C?g?????????B
???? EndOfStream???B????????????? -1???????B - Throws:
IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-
read
???}???????X?g???[?????? buffer ?? index ???w???????? ???u?? length ?o?C?g?f?[?^???????????B
?}?????\?b?h?? length ?o?C?g???????????A EndOfStream?????B?????????u???b?N?????B- Overrides:
read
in classInputStream
- Parameters:
buffer
- ???????????f?[?^???i?[???????????o?C?g?z??index
- buffer?????f?[?^?????????J?n???ulength
- buffer???????????f?[?^??- Returns:
- buffer ?????????????f?[?^?????o?C?g?????????B
???? EndOfStream???B????????????? -1???????B - Throws:
IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-
skip
???}???????????X?g???[?????f?[?^?? length ?o?C?g???????????B
?}?????\?b?h?? length ?o?C?g???????????? EndOfStream ?????B?????????u???b?N?????B- Overrides:
skip
in classInputStream
- Parameters:
length
- ???????????o?C?g???B- Returns:
- ?????????????????????o?C?g???B
- Throws:
IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-
mark
public void mark(int readLimit) ???}???????????X?g???[???????????u???}?[?N?????????A reset() ???\?b?h???}?[?N???????_?? ???????????u?? ?????????????????B- Overrides:
mark
in classInputStream
- Parameters:
readLimit
- ?}?[?N???u???????????E???o?C?g???B ?}???o?C?g?????L?????f?[?^?????? ?????????? reset()?????????????? ?\?????????B
-
reset
???}???????????X?g???[???????????????u???????? mark() ???\?b?h???????o???????????????u???????????B- Overrides:
reset
in classInputStream
- Throws:
IOException
-
(1) CachedInputStream ?? mark ???????????????????B
(2) ???}???????????X?g???[???? markSupported()?? false ???????????B
(3) ???}???????????X?g???[???? ???o???G???[??????????????B
?????????B
-
markSupported
public boolean markSupported()???}???????????X?g???[???? mark() ?? reset() ?? ?T?|?[?g?????????????B- Overrides:
markSupported
in classInputStream
- Returns:
- ?X?g???[???? mark() ?? reset() ??
?T?|?[?g?????????? true?B
?T?|?[?g??????????? false?B
-
available
???}???????????X?g???[???????u???b?N??????? ?????????}???????????o?C?g?????????B- Overrides:
available
in classInputStream
- Returns:
- ?u???b?N????????????o?????o?C?g???B
- Throws:
IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-
close
?}???????X?g???[????????A?g?p??????? ?S???????\?[?X???J???????B- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classInputStream
- Throws:
IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-