我知道,
GZIPInputStream extends InflaterInputStream extends FilterInputStream extends InputStream和
DataInputStream extends FilterInputStream extends InputStream 我想知道以下几点的区别。
InputStream mIstr1 = new DataInputStream(new GZIPInputStream(mUConn.getInputStream()));
InputStream mIstr2 = new GZIPInputStream(mUConn.getInputStream());
InputStream mIstr3 = new DataInputStream(mUConn.getInputStream());
InputStream mIstr4 = mUConn.getInputStream();mUConn是HttpURLConnection。
我担心的是
发布于 2012-10-17 13:23:40
它们确实是完全不同的类,文档应该能够很好地描述每个类的用途。
您想要使用DataInputStream中的方法吗?这些方法涉及以文档化的方式从流中读取原始类型和字符串吗?如果是这样,请使用DataInputStream包装原始流;否则不要。
原始流是否包含用gzip算法压缩的数据?如果是的话,请使用GZIPInputStream;否则不要使用。我不会期望来自HttpURLConnection的输入流显示gzip压缩的数据;我希望HTTP库能够根据头执行适当的膨胀,但它们在这里可能是“哑”的。(如果是这样的话,您很可能希望找到其他库。)
https://stackoverflow.com/questions/12935277
复制相似问题