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)写入或读出

时间: 2024-10-16 12:12:09

Java基础知识二次学习--第八章 流的相关文章

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

基础知识有时候感觉时间长似乎有点生疏,正好这几天有时间有机会,就决定重新做一轮二次学习,挑重避轻 回过头来重新整理基础知识,能收获到之前不少遗漏的,所以这一次就称作查漏补缺吧!废话不多说,开始! 第一章  JAVA简介 时间:2017年4月24日10:23:32 章节:01章_02节 内容:jdk的配置与安装 完成情况:已经完成,cmd中javac提示出相关命令 时间:2017年4月24日10:30:39 章节:01章_04节 内容:输出HelloWorld 完成情况: 已经完成 javac先将

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

第二章 基础语法与递归补充   时间:2017年4月24日10:39:18 章节:02章_01节,02章_02节 视频长度:49:21 + 15:45 内容:标识符,关键字与数据类型 心得:由字母,下划线,$,数字组成,应该由字母,下划线$开头,同时应该避开java保留字符 变量是内存中的一小块区域,使用变量名来访问这块区域 执行过程中的内存管理(疑问:这里的内存和Jvm的一样吗?) code segment 存放代码 data segment 静态变量 字符串常量 stack 栈 局部变量 h

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

第五章 数组 时间:2017年4月26日15:11:30~2017年4月26日15:15:54 章节:05章_01节  视频长度:09:30 内容:一维数组的内存分析 心得: Java中数组是引用类型 栈里面存的数组的引用 实际对象在堆内存里面 (C与C++是分配在栈里的) 内存图: 元素为引用数据类型的数组 引用类型的数组如上图 时间:2017年4月26日15:16:22~2017年4月26日15:19:00 章节:05章_02节  视频长度:05:25 内容:数组元素的创建与使用 心得: 首

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

第四章 异常处理 时间:2017年4月26日11:16:39~2017年4月26日11:28:58 章节:04章_01节 04章_02节 视频长度:20:46+01:16 内容:异常的概念 心得: Java异常是JAVA提供的用于处理程序中错误的一种机制 实在运行的过程中发生的一些异常事件(比如除0溢出,数组越界,要读取的文件不存在) 设计良好的程序应该在异常发生时提供处理这些错误的方法,使得程序不会因为异常的发生而阻断或产生不可预见的结果 JAVA程序的执行过程中 如果出现异常事件,可以生成异

java基础知识回顾之javaIO类--管道流PipedOutputStream和PipedIutputStream

管道流(线程通信流):管道流的主要作用是可以进行两个线程间的通讯,分为管道输出流(PipedOutputStream).管道输入流(PipedInputStream),如果想要进行管道输出,则必须要把输出流连在输入流之上.如图所示: 1.管道输入流应该连接到管道输出流 ,输入流和输出流可以直接连接       2.使用多线程操作,结合线程进行操作.通常由某个线程从管道输入流中(PipedInputStream)对象读取.          并由其他线程将其写入到相应的端到输出流中.不能使用单线程

Java基础知识(二)

1,字符串 new String("abc")创建了几个对象? 一个或两个,如果常量池中原来有"abc",则只创建一个对象:如果常量池中原来没有字符串"abc",那么就会创建两个对象. String s="abc"; String s1="ab"+"c"; System.out.println(s==s1); 输出 true ,因为"ab"+"c"

Java 基础知识(二)之面向对象技术

1.    面向对象与面向过程的区别 面向对象把数据及对数据的操作方法放在一起,作为一个互相依存的整体,即对象.对同类对象抽象出其共性,即类,类中的大多数数据,只能被本类的方法进行处理.类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信.程序流程由用户在使用中决定. 面向过程是一种以事件为中心的开发方法,就是自顶向下顺序执行,逐步求精,其程序结构是按功能划分为若干个基本模块,这些模块形成一个树状结构,各模块之间的关系也比较简单,在功能上相对独立,每一模块内部一般是由顺序.选择

JAVA基础知识之北京pk-10平台出租流

一.北京pk-10平台出租Q1446595067流解释API文档说明:FileReader流是用于读取字符文件的便捷类.此类的构造函数假定默认字符编码和默认字节缓冲区大小是合适的.如果要自己指定这些值,那么需要通过FileInputStream流对象来构造InputStreamReader流对象即可 FileReader类继承InputStreamReader类 public class FileReader extends InputStreamReader{}1)构造函数假定默认字符编码和默

java基础知识《JAVA 核心技术》学习笔记(一)

一:数据类型 (1)java整形: 类型                         存储要求 int                              4字节 short                          2字节 long                           8字节 byte                           1字节 (2)浮点类型 类型                         储存要求 float