在java中我们使用输入流来向一个字节序列对象中写入,使用输出流来向输出其内容。C语言中只使用一个File包处理一切文件操作,而在java中却有着60多种流类型,构成了整个流家族。看似庞大的体系结构,其实只要使用适合的方法将其分门别类,就显得清晰明了了。而我准备将其按照处理文件类型的不同,分为字节流类型和字符流类型。共两篇文章,本篇从字节流开始。主要包含以下内容:
在java基础学习中特别是io学习中字节流是非常重要的,这里一起探讨下,主要是了解下面几点:
第一步
在程序中所有的数据都是以流的方式存储或传输的,程序需要数据时使用流读取数据,程序需要将一些数据保存的时候使用输出流保存
第二步
程序中实际上输入输出都是以流的形式保存的,流中保存的实际上全是字节文件
第三步
java.io包中操作文件的内容主要有两大类,字节流字符流,两部分都包括输入输出操作,字节流主要使用OutputStream InputStream,字符流使用Wirter、Reader完成
第四步
javaIO中文件操作有相应的步骤:
1、使用File类打开一个文件
2、通过字节流或字符流指定输出位置
3、进行读写操作
4、关闭输入输出
第五步
字节流主要操作的是byte类型数据,以byte数组为准,主要操作类是InputStream、OutputStream
,OutputStream是Io包中输出流最大父类,此类是抽象类,如果想要使用此类,必须通过子类实现,比如FileOutputStream
第六步
InputStream是字节输入流,可以通过这个类把文件的内容读取进来,inputStream也是抽象类,如果想使用此类必须用子类实现,比如FileInputStream
Java 相关知识点汇总,包括 Java 基础、Java 容器、Java 并发、JVM、编程规范、数据结构与算法、数据库、系统设计、设计模式、数据通信、网站架构、备战面试、Github 榜单。
本文向大家介绍Java容器ArrayList知识点总结,包括了Java容器ArrayList知识点总结的使用技巧和注意事项,需要的朋友参考一下 ArrayList 底层实现是数组,访问元素效率高 (查询快,插入、修改、删除元素慢) 与LinkedList相比,它效率高,但线程不安全。 ArrayList数组是一个可变数组,可以存取包括null在内的所有元素 每个ArrayList实例都有一个容量,
本文向大家介绍Java中MyBatis Plus知识点总结,包括了Java中MyBatis Plus知识点总结的使用技巧和注意事项,需要的朋友参考一下 好程序员Java教程分享MyBatis Plus介绍: 1.MyBatis Plus 介绍 MyBatis Plus 是国内人员开发的 MyBatis 增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 MyBat
本文向大家介绍Java SPI 机制知识点总结,包括了Java SPI 机制知识点总结的使用技巧和注意事项,需要的朋友参考一下 前言 不知大家现在有没有去公司复工,我已经在家办公将近 3 周了,同时也在家呆了一个多月;还好工作并没有受到任何影响,我个人一直觉得远程工作和 IT 行业是非常契合的,这段时间的工作效率甚至比在办公室还高,同时由于我们公司的业务在海外,所以疫情几乎没有造成太多影响。 扯远
本文向大家介绍java反射的作用知识点总结,包括了java反射的作用知识点总结的使用技巧和注意事项,需要的朋友参考一下 Java的反射机制是Java特性之一,反射机制是构建框架技术的基础所在。灵活掌握Java反射机制,对大家以后学习框架技术有很大的帮助。 什么是Java的反射? 反射是Java的特征之一,是一种间接操作目标对象的机制。 JAVA反射机制是在运行状态中,对于任意一个实体类,都能够知道
本文向大家介绍java注解的类型知识点总结,包括了java注解的类型知识点总结的使用技巧和注意事项,需要的朋友参考一下 提到java里的注解,和我们平时的注释还是有很大的区别,主要是作为java特性来使用的,跟我们常见的类是同一个使用的层面。关于java注解的类型,我们可以简单分为:自定义注解和元注解。其中元注解里的JDK又有5中注解的类型,下面一起来看看具体的内容讲解吧。 1、自定义注解 定义注