现在我不知道这两种方法有什么区别:

DataInputStream.skipBytesDataInputStream.skip

我知道skip必须来自InputStreamskipBytes来自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/

10-11 09:19