【DAY13】JAVA第十三天I/O学习笔记
2016-06-05 10:14
483 查看
行分割符在java中可以通过方法得到.
系统属性名是line.separator.
不同平台的行分隔符是不同的。
windows7:\r\n
macOS :\n
--------------------------------
System.getProperty("line.separator"); //执行系统属性名/
FileWriter : 没有缓冲区功能
---------------------------
本身没有新增任何功能,继承的OutputStreamWriter。
write(){
//直接写入数据到文件中。
sun.nio.cs.StreamEncoder.write(...);
}
BufferedWriter:
----------------------------------
对Writer进行包装,里面定义缓冲区,提供写入单个字符、char[]、String方法。
提高写入效率。
等级树结构:Object --> Writer --> BufferedWriter
flushBuffer() : 清理缓冲区,将缓冲区数据写入目的地。
close()方法 : 包含flushBuffer()。
缓冲区要结合流才可以使用。
在流的基础上对流的功能进行了增强。
FileReader
-----------------
继承关系树:Object --> Reader --> InputStreamReader --> FileReader
read() {
InputStreamReader.read(){
sun.nio.cs.StreamDecoder.read();
}
}
BufferedReader
------------------
继承关系树:Object --> Reader --> BufferedReader --> LineNumberReader
read(){
char[] cbuf = ... ;
cbuf[xxx] = c ;
fill();
return c ;
}
引入流是为了避免对物理文件的频繁访问。
byte[] bytes = new byte[1023];
byte[] b2 = bytes ;
bytes = null ;
flush() //清理
refresh() //刷新
clear() //清空
字节流:
基本操作与字符流类相同。
但它不仅可以操作字符,还可以操作其他媒体文件(JPG.MP3.AVI...)
OutputStream:输出流(字节流)
---------------------------------
是FilterOutputStream和FileOutputStream的父类。
InputStream:输入流(字节流)--------------------------------- 是FilterInputStream和FileInputStream的父类
metadata : 元数据,描述数据的数据。
-----------------------------------
在Java中元数据以标签的形式存在于Java代码中,元数据标签的存在并不影响程序代码的编译和执行,它只是被用来生成其它的文件或针在运行时知道被运行代码的描述信息。
系统属性名是line.separator.
不同平台的行分隔符是不同的。
windows7:\r\n
macOS :\n
--------------------------------
System.getProperty("line.separator"); //执行系统属性名/
FileWriter : 没有缓冲区功能
---------------------------
本身没有新增任何功能,继承的OutputStreamWriter。
write(){
//直接写入数据到文件中。
sun.nio.cs.StreamEncoder.write(...);
}
BufferedWriter:
----------------------------------
对Writer进行包装,里面定义缓冲区,提供写入单个字符、char[]、String方法。
提高写入效率。
等级树结构:Object --> Writer --> BufferedWriter
flushBuffer() : 清理缓冲区,将缓冲区数据写入目的地。
close()方法 : 包含flushBuffer()。
缓冲区要结合流才可以使用。
在流的基础上对流的功能进行了增强。
FileReader
-----------------
继承关系树:Object --> Reader --> InputStreamReader --> FileReader
read() {
InputStreamReader.read(){
sun.nio.cs.StreamDecoder.read();
}
}
BufferedReader
------------------
继承关系树:Object --> Reader --> BufferedReader --> LineNumberReader
read(){
char[] cbuf = ... ;
cbuf[xxx] = c ;
fill();
return c ;
}
引入流是为了避免对物理文件的频繁访问。
byte[] bytes = new byte[1023];
byte[] b2 = bytes ;
bytes = null ;
flush() //清理
refresh() //刷新
clear() //清空
字节流:
基本操作与字符流类相同。
但它不仅可以操作字符,还可以操作其他媒体文件(JPG.MP3.AVI...)
OutputStream:输出流(字节流)
---------------------------------
是FilterOutputStream和FileOutputStream的父类。
InputStream:输入流(字节流)--------------------------------- 是FilterInputStream和FileInputStream的父类
metadata : 元数据,描述数据的数据。
-----------------------------------
在Java中元数据以标签的形式存在于Java代码中,元数据标签的存在并不影响程序代码的编译和执行,它只是被用来生成其它的文件或针在运行时知道被运行代码的描述信息。
相关文章推荐
- java多线程——同步与锁
- java学习Class动态加载
- JAVA多线程之生产者消费者模型
- java2
- java
- Spring学习(十六)Spring Bean内容模型介绍
- 【java并发】线程同步工具Semaphore的使用
- java学习:基于Java构建微服务
- 内省(Introspector)操作JavaBean的属性
- 2016年团体程序设计天梯赛-初赛 - 后天 - Java
- 2016年团体程序设计天梯赛-初赛 - 奇偶分家 - Java
- 2016年团体程序设计天梯赛-初赛 - 重要的话说三遍 - Java
- 2016年团体程序设计天梯赛-初赛 - 谁先倒 - Java
- 2016年团体程序设计天梯赛-初赛 - 大笨钟 - Java
- 2016年团体程序设计天梯赛-初赛 - 到底有多二 - Java
- Collection
- java基础-I/O操作,模拟服务器
- 基于Rete算法的JAVA规则引擎
- java 利用webservice传输文件
- Java规则引擎工作原理及其应用