0

如何从特定字节开始读取?我有以下代码:

        try {
            while ( (len = f.read(buffer)) > 0 ) {}         
        }

例如,我想从 50 字节开始读取。

4

2 回答 2

3

您应该使用跳过方法。 http://developer.android.com/reference/java/io/InputStream.html#skip(long )

您可以跳过所需的字节数。

int nbToSkip = 50
while (nbToSkip > 0) {
   int nbSkipped = f.skip( nbToSkip );
   nbToSkip -= nbSkipped ; 
}
于 2012-06-08T11:21:55.817 回答
0

我不确定“f”的类型是什么,但我会假设它是某种流。

另外,您的意思是要读取 50 个字节的块,还是从流中的第 50 个字节开始?我假设后者。

不确定您使用的是什么语言,但无论如何都可以:

也许有一种寻找功能,您可以使用它寻找流中的特定位置,如下所示:

f.seek(50, SEEK_START);

否则,您可以通过从流中读取 50 个字节或 50 次 1 个字节来以穷人的方式做到这一点。

没有更多参考,很难给你一个好的答案。

于 2012-06-08T11:00:50.430 回答