现在我不知道这两种方法有什么区别:DataInputStream.skipBytes
和DataInputStream.skip
。
我知道skip
必须来自InputStream
和skipBytes
来自DataInput
的事实,但是仍然存在任何区别。您知道,在J2ME中使用流时,事情变得非常棘手,所以我需要知道!
从JSR-75中的FileConnection
返回的Input / DataInput流在处理方面是否会与其他任何此类流有所不同?
谢谢!
最佳答案
来自DataInputStream
:
public final int skipBytes(int n) throws IOException {
int total = 0;
int cur = 0;
while ((total<n) && ((cur = (int) in.skip(n-total)) > 0)) {
total += cur;
}
return total;
}
从代码中可以看到,
skipBytes
使用skip (InputStream.skip)
我唯一能说的是,如果包装的inputStream(DataInputStream中的InputStream)中的数据被另一个线程更改,则skipBytes和skip的结果可能会不同。但是,如果您的应用程序仅使用单线程,则skipBytes和skip相同。
关于java - skipBytes和DataInputStream的skip之间的区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3694788/