簡體   English   中英

輸入/輸出流到底是什么?

[英]What exactly is an input/output stream?

我已經為規范編寫了代碼,該規范必須能夠從輸入流中接收文本並通過輸出流將其寫出。 該代碼用於對來自文件或來自用戶輸入的消息進行加密,然后將其寫入命令提示符或文件中。 輸入/輸出流的一般類如何處理這兩種情況,以及我給適合輸入流和輸出流規格的函數參數指定哪種類型的參數?

您的功能可能類似於:

public void encryptFile(String inFile, String outFile) {
   ...
}

public void encryptConsoleToFile(String outFile) {
   ...
}

還是我誤會了你的問題?

輸入/輸出流表示來自某個源的任何數據流,這些源要么進入您的代碼,要么離開您的代碼。 特別:

輸入流表示來自某個可以讀取的數據源(數據生產者)的數據。 數據長度是否已知取決於源。 例如,從文件讀取的輸入流(java中的FileInputStream對象),從網絡讀取的輸入流,從現有的字節數組(ByteArrayInputStream)讀取的輸入流等。例如,當通過輸入流讀取直到文件結尾時,文件將產生數據。到達,而正在進行的TCP連接之類的東西會產生數據,直到連接終止。

輸出流的行為完全相同,只是它用於將數據從程序寫入目標目標。 寫入文件(FileOutputStream),寫入TCP流,寫入目標字節數組都是這些示例。

輸入/輸出流的所謂規范直接與您正在讀取/寫入的源/目標相關。 例如,在寫入控制台時,您可以選擇使用行緩沖,以便用戶可以立即看到輸出,而在寫入文件時,可以使用更大的緩沖區來提高性能。

特別是在java中, InputStreamOutputStream類定義java中所有I / O流的基本規范。

輸入/輸出流到底是什么?

InputStreamOutputStream是兩個單獨的抽象類。 我建議您通讀並理解其文檔。

輸入/輸出流的一般類如何處理這兩種情況,以及我給適合輸入流和輸出流規格的函數參數指定哪種類型的參數?

它們通常不是由同一個類實現的(並且由於它們是抽象類,因此不可能同時擴展兩個類)。 有一個用於輸入的類層次結構,另一個用於輸出的類層次結構。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM