第八章 流
 
时间: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基础知识二次学习--第八章 流的更多相关文章

  1. Java基础知识二次学习--第三章 面向对象

    第三章 面向对象   时间:2017年4月24日17:51:37~2017年4月25日13:52:34 章节:03章_01节 03章_02节 视频长度:30:11 + 21:44 内容:面向对象设计思 ...

  2. Java基础知识二次学习-- 第一章 java基础

    基础知识有时候感觉时间长似乎有点生疏,正好这几天有时间有机会,就决定重新做一轮二次学习,挑重避轻 回过头来重新整理基础知识,能收获到之前不少遗漏的,所以这一次就称作查漏补缺吧!废话不多说,开始! 第一 ...

  3. Java基础知识二次学习--第六章 常用类

    第六章 常用类   时间:2017年4月26日16:14:49~2017年4月26日16:56:02 章节:06章_01节~06章_06节 视频长度:20:57+1:15+8:44+1:26+11:2 ...

  4. Java基础知识二次学习--第七章 容器

    第七章 容器   时间:2017年4月27日15:08:30 章节:07章01节~07章04节 视频长度:20:21 +12:38 +3:55 +2:57 内容:容器API 心得: Java API ...

  5. Java基础知识二次学习--第五章 数组

    第五章 数组 时间:2017年4月26日15:11:30~2017年4月26日15:15:54 章节:05章_01节  视频长度:09:30 内容:一维数组的内存分析 心得: Java中数组是引用类型 ...

  6. Java基础知识二次学习-- 第二章 基础语法与递归补充

    第二章 基础语法与递归补充   时间:2017年4月24日10:39:18 章节:02章_01节,02章_02节 视频长度:49:21 + 15:45 内容:标识符,关键字与数据类型 心得:由字母,下 ...

  7. Java基础知识二次学习--第四章 异常

    第四章 异常处理   时间:2017年4月26日11:16:39~2017年4月26日11:28:58 章节:04章_01节 04章_02节 视频长度:20:46+01:16 内容:异常的概念 心得: ...

  8. java 基础知识二 基本类型与运算符

    java  基础知识二 基本类型与运算符 1.标识符 定义:为类.方法.变量起的名称 由大小写字母.数字.下划线(_)和美元符号($)组成,同时不能以数字开头 2.关键字 java语言保留特殊含义或者 ...

  9. java基础知识(二)

    java的布局管理: borderLayout:则将板块分为东西南北中五个方向,每添加一个组件就要指定组件摆放的方位,放置在东西南北四个方向的组件将贴边放置.当拉大Frame的时候,处在center( ...

随机推荐

  1. sublime Text3+emmet(快速开发)

    sublime软件使用Emmet插件快速编写CSS样式                    基本的CSS样式编写时,很多样式只需输入首字母即可得到不带属性值的CSS样式,像上面说到的margin.而 ...

  2. C语言枚举类型(Enum)深入理解

    在实际编程中,有些数据的取值往往是有限的,只能是非常少量的整数,并且最好为每个值都取一个名字,以方便在后续代码中使用,比如一个星期只有七天,一年只有十二个月,一个班每周有六门课程等. 以每周七天为例, ...

  3. mysql 免安装版 + sqlyog 安装 步骤 --- 发的有点晚

    总有些朋友不会安装mysql,其实软件安装不是学习mysql的重点,基本上也就安装一次,工作后一般公司里也不会让你安装,如果非要安装,百度一下就行了.安装版本百度上有许多,下面就提供一个免安装版的步骤 ...

  4. css锚点ios不兼容的方法

    css锚点的正常方法: <a href="#1f"></a> <a name="1f"></a> ios出现的问 ...

  5. druid 连接kafuk

    java -Xmx256m -Duser.timezone=UTC -Dfile.encoding=UTF-8 -Ddruid.realtime.specFile=examples/indexing/ ...

  6. [USACO11NOV]牛的障碍Cow Steeplechase

    洛谷传送门 题目描述: 给出N平行于坐标轴的线段,要你选出尽量多的线段使得这些线段两两没有交点(顶点也算),横的与横的,竖的与竖的线段之间保证没有交点,输出最多能选出多少条线段. 因为横的与横的,竖的 ...

  7. 免费给自己的网站加 HTTPS

    简介 本文是通过 Let's Encrypt 提供的免费证书服务,实现让自己的网站加上 HTTPS.我的网站 -- hellogithub,就是通过这种方式实现的 HTTPS,效果如下: Let's ...

  8. 细谈UITabBarController

    1.简述 UITabBarController和UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,UITabB ...

  9. iOS原生地图与高德地图的使用

    原生地图 1.什么是LBS LBS: 基于位置的服务 Location Based Service 实际应用:大众点评,陌陌,微信,美团等需要用到地图或定位的App 2.定位方式 1.GPS定位 2. ...

  10. Linux - 进程调度算法

    进程调度: 无论是在批处理系统还是分时系统中,用户进程数一般都多于处理机数.这将导致它们互相争夺处理机.另外,系统进程也同样需要使用处理机. 这就要求进程调度程序按一定的策略,动态地把处理机分配给处于 ...