node.js - java的輸入流、輸出流怎么理解?
問題描述
import java.net.*;import java.io.*;public class URLConnDemo{ public static void main(String [] args) { try { URL url = new URL('http://www.xxx.com'); URLConnection urlConnection = url.openConnection(); HttpURLConnection connection = null; if(urlConnection instanceof HttpURLConnection) { connection = (HttpURLConnection) urlConnection; } else { System.out.println('請輸入 URL 地址'); return; } BufferedReader in = new BufferedReader( new InputStreamReader(connection.getInputStream())); String urlString = ''; String current; while((current = in.readLine()) != null) { urlString += current; } System.out.println(urlString); }catch(IOException e) { e.printStackTrace(); } }}
從這段代碼來看,請求一個(gè)url并把內(nèi)容讀取出來顯示,但是為什么這里用到getInputStream,應(yīng)該不是getOutStream 輸出嗎?
問題解答
回答1:InputStream 是用來讀取的,OutputStream 是用來寫入的;換句話說,輸入流是指輸入到系統(tǒng)中的流,系統(tǒng)從這個(gè)流中讀取內(nèi)容;輸出流是指從系統(tǒng)輸出的流,系統(tǒng)往這個(gè)流中寫入內(nèi)容。這個(gè)取名方式是站在使用者的角度,而不是 Stream 對象的角度。用過幾次就習(xí)慣了。
相關(guān)文章:
1. apache - 想把之前寫的單機(jī)版 windows 軟件改成網(wǎng)絡(luò)版,讓每個(gè)用戶可以注冊并登錄。類似 qq 的登陸,怎么架設(shè)服務(wù)器呢?2. javascript - 為什么嵌套的Promise不能按預(yù)期捕獲Exception?3. javascript - 編程,算法的問題4. java - HTTPS雙向認(rèn)證基礎(chǔ)上有無必要再進(jìn)行加簽驗(yàn)簽?5. windows - asp.net連接上mysql之后如何調(diào)用?比如下面的登錄驗(yàn)證功能怎么實(shí)現(xiàn)6. mysql - 面試題:如何把login_log表轉(zhuǎn)換成last_login表?7. 剛放到服務(wù)器的項(xiàng)目出現(xiàn)這中錯(cuò)誤,有高手指點(diǎn)嗎8. css - 手機(jī)qq打開網(wǎng)頁無法使用文件上傳功能?9. javascript - nodejs實(shí)現(xiàn)異步時(shí)遇到的一個(gè)問題10. css3 - Typecho 后臺部分表單按鈕在 Chrome 下出現(xiàn)靈異動畫問題,求解決
