Java基础知识二次学习--第八章 流

Posted Nemo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础知识二次学习--第八章 流相关的知识,希望对你有一定的参考价值。

第八章 流
 
时间:2017年4月28日11:03:07~2017年4月28日11:41:54
章节:08章_01节
视频长度:21:15
内容:IO初步
心得:
所有的流在java.io包里面
定义了多个流类型(类或抽象类)来实现输入/输出功能
可以从不同的角度对其进行分类
按数据流的方向不同可以分为输入流和输出流
按处理数据单位不同可以分为字节流和字符流
按照功能不同可以分为节点流和处理流
jdk中所提供的的所有流类型位于包Java.io内都分别继承自以下四种抽象流类型
输入流 InputStream  Reader(字符)
输出流 OutputStream Writer(字符)
 
字节流就是01010101的读 每次读1个字节(8位)
字符流就是按一个字符一个字符的读 1个字符=2个字节
 
节点流是直接将流连接到程序,可以从一个特点的数据源(节点)读写数据(如:文件,内存)
处理流是"连接"在已存在的流(节点流或处理流)之上,通过对数据的处理为程序提供更为强大的读写功能
图形显示

 

 
 
 
inputStream
 

 

outputStream

 

 
Reader

 

Writer

 

 
时间:2017年4月28日11:42:08~2017年4月28日13:45:03
章节:08章_02节
视频长度:11:34
内容:FileInputStream_FileOutputStream
新的:
节点流类型

 

 
文件的复制
 
FileInputStream in = null;
FileOutputStream out = null;
try{
in = new FileInputStream("d:/java/testFileInput.java");//要读取的文件
out =new FileOutputStream("d:/java/testFileOutput.java");//要写入的文件
 while((b=in.read()) != -1){
      out.write(b);
}
in.close();
out.close()
....之后的cath就不写了
}
将读出来的字节存到b中 再写入到out里。
 
时间:2017年4月28日13:45:33~2017年4月28日13:49:56
章节:08章_03节
视频长度:05:10
内容:FileReader 和FileWriter
心得:
和上面一样
int c= 0;
FileReader fr =null;
fr=new FileReader("文件地址")
while((c=fr.read()) != -1){
System.out.print((char)c)
}
 
时间:2017年4月28日13:50:16~2017年4月28日14:02:58
章节:08章_04节 08章_05节
视频长度:13:32 + 1:18
内容:BufferedIO + IO_FAQ
心得:
处理流
处理流是"连接"在已存在的流(节点流或处理流)之上,通过对数据的处理为程序提供更为强大的读写功能

时间:2017年4月28日14:05:22~2017年4月28日14:24:46
章节:08章_06节
视频长度:22:06
内容:TransformIO
心得:
转换流

 

可以将字节流与字符流之间互相转换
OutputStreamWriter osw =new OutputStreamWriter(
new FileOutputStream("...")
)
将字节流转换为字符流 返回一个字符流

 

true 的话 是代表追加 接着原来文件后面写
不写true的话 会将原来的内容清空掉
 
第3个参数“iso-8859-1”是指定字符编码 latin-1
 

 

System.in//阻塞式的方法,也是同步方法
 
时间:2017年4月28日14:24:53~2017年4月28日14:40:24
章节:08章_07节
视频长度:18:40
内容:DataIO ByteArrayIO
心得:

 

 

 
注意 先写进去的先读出来
(先进先出)--队列
(先进后出)--栈
 
时间:2017年4月28日14:40:39~2017年4月28日14:50:39
章节:08章_08节
视频长度:21:21
内容:Print 流
心得:
打印流 只有wtrite 和out了 因为是打印出来
 

 

注意 System.setOut ,更改了打印的位置
原来默认是打印在控制台
这里改成了 打印到文件里了。

 

 
控制台参数 是文件名 
然后一行一行的打印出来 到控制台

 

将控制台输入的文字 写到一个文件里
然后作一些处理 就是一个简单的日志文件记录
同样是阻塞式的
 
时间:2017年4月28日14:50:39 ~2017年4月28日15:00:14
章节:08章_09节
视频长度:13:06
内容:ObjectIO 流
心得:
直接将对象(Object)写入或读出

 

 

以上是关于Java基础知识二次学习--第八章 流的主要内容,如果未能解决你的问题,请参考以下文章

“全栈2019”Java异常第八章:throw关键字详解

python基础学习笔记——Python基础教程(第2版 修订版)第八章(异常)

“全栈2019”Java第八章:IntelliJ IDEA设置注释不显示在行首

Java基础入门-第八章-04

JAVA-初步认识-第八章-数组工具对象建立

Java《Java程序设计基础教程》第七八章学习