GZIPInputStream を使用して gzip ファイルを読み込んでいます。一度に大量のデータを読み込みたいのですが、GZIPInputStream に何バイト読み込むように要求しても、読み込まれるバイト数は常にはるかに少なくなります。例えば、
val bArray = new Array[Byte](81920)
val fis = new FileInputStream(new File(inputFileName))
val gis = new GZIPInputStream(fis)
val bytesRead = gis.read(bArray)
読み取られるバイトは常に約 1800 バイトですが、bArray のサイズ (この場合は 81920) とほぼ同じになるはずです。なぜこのようになっているのですか?この問題を解決する方法はありますか?実際には、より多くのバイト数を読み取ることができますか?