IO流之节点流(字节流)
作者:互联网
节点流可以分为:字节节点流和字符节点流
数据源直接到程序的成为节点流(低级流)
字节流
输入流----InputStream
InputStream 是输入流的抽象父类,若创建对象,需new它的子类
InputStream 方法:
1.read():每次读取一个字节
2.read(byte[],start,length):每次读取字节数组的一部分
字节流-----一个字节一个字节的去读取
还有一种方法是借助于一个字节数组,每次都把数据放在一个数组里面,增加数据的读取速度。(代码如下)
public class HelloObjects { public static void main(String[] args) throws Exception { //获取文件的输出流 InputStream inputStream = new FileInputStream("D:\\IO.txt"); byte[] bytes = new byte[8]; int len = 0; while ((len=inputStream.read(bytes))!=-1){
System.out.println(Arrays.toString(Arrays.copyOfRange(bytes,0,len))); } }
输出流----OutputStream
方法:
1.write(int):每次写出一个字节(后续写入会覆盖上一次写入,需要在地址后加true。代码如下)
2.write(byte[]):每次写出一个数组
1 //获取文件的输出流 2 OutputStream outputStream = new FileoutputStream("D:\\IO.txt"); 3 //开始写出数据--默认覆盖已有的数据 4 outputStream.write(97)//会输出一个a 5 outputStream.write(98)//会输出一个b并把a覆盖
//获取文件的输出流---如果添加参数true说明可以追加数据 OutputStream outputStream = new FileoutputStream("D:\\IO.txt",true); //开始写出数据--默认覆盖已有的数据 outputStream.write(97)//会输出一个a outputStream.write(98)//会输出一个b,不会将a覆盖
还可以通过byte[]数组一次插入多个字节
1 //获取文件的输出流 2 OutputStream outputStream = new FileoutputStream("D:\\IO.txt"); 3 //一次性写出多个字节 4 byte[] bytes = "你好".getBytes("utf-8");; 5 outputStream.write(bytes)
标签:输出,outputStream,字节,流之,write,IO,new,byte 来源: https://www.cnblogs.com/zmdhh/p/15056257.html