我有一个包含密钥的二进制文件,每个密钥后都有一个与之关联的图像.我想跳出不同的键,但找不到任何改变输入流中索引定位的方法.我已经看过这个mark()方法,但它并没有跳到不同的地方.
有人知道怎么做吗?
有一个long skip(long n)你可能能够使用方法:
跳过并丢弃
n此输入流中的数据字节.由于skip各种原因,该方法可能最终跳过一些较小数量的字节0.这可能是由许多条件造成的;n在跳过字节之前到达文件末尾只有一种可能性.返回跳过的实际字节数.如果n是否定的,则不跳过任何字节.
如文档所述,您无法保证n将跳过字节,因此请始终双重检查返回的值.请注意,这不允许您"向后跳",但如果必须markSupported(),则可以reset()先进行,然后 skip转到较早的位置.
您也可以使用java.io.RandomAccessFile,顾名思义,允许随机访问其seek(long pos)方法.
你提到的图像,因此,如果您正在使用Java高级图像处理,另一种可能的选择是com.sun.media.jai.codec.FileSeekableStream,这是一个SeekableStream是需要从它的输入File或RandomAccessFile.请注意,此类不是JAI API的已提交部分.它可能会在未来的JAI版本中被删除或更改.
| 归档时间: |
|
| 查看次数: |
12013 次 |
| 最近记录: |