📅  最后修改于: 2020-09-27 01:56:00             🧑  作者: Mango
Java I / O(输入和输出)用于处理输入并产生输出。
Java使用流的概念来加快I / O操作的速度。 java.io包包含输入和输出操作所需的所有类。
我们可以通过Java I / O API在Java中执行文件处理。
流是数据序列。在Java中,流由字节组成。之所以称其为溪流,是因为它就像不断流动的水流一样。
在Java中,会自动为我们创建3个流。所有这些流都随控制台附带。
1)System.out:标准输出流
2)System.in:标准输入流
3)System.err:标准错误流
让我们看一下打印输出的代码和一条错误消息到控制台。
System.out.println("simple message");
System.err.println("error message");
让我们看一下从控制台获取输入的代码。
int i=System.in.read();//returns ASCII code of 1st character
System.out.println((char)i);//will print the character
下面给出OutputStream和InputStream类的说明:
Java应用程序使用输出流将数据写入目标。它可以是文件,阵列,外围设备或套接字。
Java应用程序使用输入流从源中读取数据。它可以是文件,阵列,外围设备或套接字。
让我们通过下图了解Java OutputStream和InputStream的工作。
OutputStream类是一个抽象类。它是代表字节输出流的所有类的超类。输出流接受输出字节并将其发送到某个接收器。
Method | Description |
---|---|
1) public void write(int)throws IOException | is used to write a byte to the current output stream. |
2) public void write(byte[])throws IOException | is used to write an array of byte to the current output stream. |
3) public void flush()throws IOException | flushes the current output stream. |
4) public void close()throws IOException | is used to close the current output stream. |
InputStream类是一个抽象类。它是代表字节输入流的所有类的超类。
Method | Description |
---|---|
1) public abstract int read()throws IOException | reads the next byte of data from the input stream. It returns -1 at the end of the file. |
2) public int available()throws IOException | returns an estimate of the number of bytes that can be read from the current input stream. |
3) public void close()throws IOException | is used to close the current input stream. |