2014-02-08 82 views
0

我已经编写了规范的代码,必须能够从输入流中获取文本并通过输出流写出。该代码用于加密来自文件或来自用户的消息,并将其写入命令提示符或文件。输入/输出流的一般类如何处理这两种情况,以及我对符合输入流和输出流规范的函数的参数给出了什么类型的参数?究竟是什么输入/输出流?

回答

0

的功能可能是这样的:

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

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

也许我误解你的问题?

0

输入/输出流代表来自某个来源的任何数据流,这些数据流要么进入您的代码,要么离开它。具体来说:

输入流表示数据来自某些可读取的来源,数据的生产者。数据的长度是否已知取决于来源。例如,输入流可以从文件(Java中的FileInputStream对象)中读取,从网络读取,从现有字节数组(ByteArrayInputStream)中读取等等。例如,文件通过输入流读取时会产生数据,直到文件结束达到了,而正在进行的TCP连接等东西会产生数据,直到连接终止。

输出流的行为方式与用于将程序中的数据写入目标目标的方式完全相同。写入文件(FileOutputStream),写入TCP流,写入目标字节数组都是这样的例子。

输入/输出流的所谓规范直接与您正在读取/写入的源/目标有关。例如,写入控制台时,可以选择使用行缓冲,以便用户可以立即看到输出,而写入文件时可以使用更大的缓冲区来提高性能。

在java中,具体来说,InputStreamOutputStream类定义了java中所有I/O流的基本规格。

0

究竟是输入/输出流?

InputStream and OutputStream是两个独立的抽象类。我建议阅读并理解他们的文档。

一般类的输入/输出流的如何处理这两种东西,我该给什么类型参数的功能,适合输入流和输出流的规格参数?

它们通常不是由同一个类实现的(因为它们是抽象类,所以不可能有一个类同时扩展)。输入有一个类层次结构,另一个输出。

+0

只是迂腐,但它们是抽象类而不是接口。 – initramfs

+0

@CPUTerminator - whoops - fixed - 我倾向于把它们当作我脑海中的接口,忘记它们实际上不是接口。 – Krease