【IO】InputStream的read(byte[] b)方法


一、关于IO中的InputStream中的read(byt[] b)方法:

/***
 * @InputStream助学笔记
 * 1、测试InputStream的使用。

* 2、java.lang.Object->java.io.InputStream。

* 3、InputStream 实现的接口有Closeable。

* 4、public abstract class InputStream extends Object implements Closeable。

* 5、直接已知子类:

* AudioInputStream,ByteArrayInputStream,FileInputStream,FilterInputStream,

* InputStream,ObjectInputStream,SequenceInputStream

* 6、次抽象类是表示字节输入流的所有类的超类。需要定义InputStream子类的应用程序必须总是返回下一个输入字节的方法。

* 7、InputStream中的方法:

* (1)abstract int read():从输入流中读取数据的下一个字节。

* (2)int read(byte[] b):从输入流中读取一定数量的字节,并将其存储在缓冲区数组b中。此处“换行('\r''\n')的转义字符的ASSIC码值是:13,10”。

* (3) * *@author lxd *@version 1.0 2017-3-11 下午10:11:05 *@fileName InputStreamDemo1.java */


二、演示代码:

public class InputStreamDemo1 {
	public static void main(String[] args) {
		InputStream inputStream=System.in;
		byte[] b=new byte[512];
		try {
			int n=inputStream.read(b);
			for(int i=0;i"+(char)b[i]+",");
			}else{
				System.out.print(+b[i]+"<==>"+(char)b[i]+",");
			}
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

三、运行结果:

【IO】InputStream的read(byte[] b)方法_第1张图片

1、从运行结果可以看出:

(1)InputStream中的read(byte[] b)方法是:从输入流中读取一定数量的字节,并将其存储在缓冲区数组b 中。以整数形式返回实际读取的字节数。

(2)read方法读取某的一个字节可以转换为相应的ASSIC码字符,因此ASSIC码为13对应的是回车('\r')、10对应的是换行('\n'),这个我们可以从运行结果看出。

(3)windows中的换行符是\r\n,linux/unix下的换行符是\n。其中:回车符:\r=0x0d (13) return #回车;换行符:\n=0x0a (10) newline#换行。

你可能感兴趣的:(【IO】InputStream的read(byte[] b)方法)