应该非常简单:我有一个InputStream,我想在其中偷看(而不是读取)前两个字节,即,我希望在偷看之后InputStream的“当前位置”保持为0。最佳和最安全的方法是什么?

答案-正如我所怀疑的,解决方案是将其包装在提供可标记性的BufferedInputStream中。谢谢拉斯姆斯。

最佳答案

对于一般的InputStream,我将其包装在BufferedInputStream中,然后执行以下操作:

BufferedInputStream bis = new BufferedInputStream(inputStream);
bis.mark(2);
int byte1 = bis.read();
int byte2 = bis.read();
bis.reset();
// note: you must continue using the BufferedInputStream instead of the inputStream

关于java - 如何查看InputStream的前两个字节?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/148130/

10-09 04:23