當讀取HttpURLConnection的InputStream時,是否有任何理由使用下列其中之一:我見過兩個例子。閱讀HttpURLConnection InputStream - 手動緩衝區或BufferedInputStream?
手工緩衝:
while ((length = inputStream.read(buffer)) > 0) {
os.write(buf, 0, ret);
}
的BufferedInputStream
is = http.getInputStream();
bis = new BufferedInputStream(is);
ByteArrayBuffer baf = new ByteArrayBuffer(50);
int current = 0;
while ((current = bis.read()) != -1) {
baf.append(current);
}
編輯我還是新來的HTTP一般,但我想到的一個考慮是,如果我使用持久的HTTP連接,我不能只讀直到輸入流是空的嗎?在那種情況下,我不需要讀取消息長度,只需讀取輸入流的長度?
同樣,如果沒有使用持久連接,我認爲在正確讀取數據流方面100%的好處包括了哪些代碼?
什麼是'ByteArrayBuffer'?但是當你可以處理字節數組時,從來沒有任何理由處理單個字節。 – EJP 2017-09-29 11:12:20