Az önce bu problem yüzünden yaklaşık 1 saatimi harcadım. Çözümü de yine her zaman olduğu gibi stackoverflow'da buldum.
Bu sorunu düzelten fonksiyonu kendime göre düzenledim ve şu şekilde kullanmaya başladım:
private static long skip(InputStream s, long numbytes) throws IOException {
if (numbytes <= 0) {
return 0;
}
long n = numbytes;
int buflen = (int) Math.min(1024, n);
byte data[] = new byte[buflen];
while (n > 0) {
int r = s.read(data, 0, (int) Math.min((long) buflen, n));
if (r < 0) {
break;
}
n -= r;
}
return numbytes - n;
}Java, kendisi de bu şekilde yaptığını söylüyor bize aslında. Bir byte array'i yaratıp onun içerisine okuyarak skip ediyormuş datayı. Biz de aynı şekilde yaptık. O yaptı çalışmadı, biz yaptık çalıştı. Garip.
