Java之IO流用法总结
Posted zengblogs
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java之IO流用法总结相关的知识,希望对你有一定的参考价值。
Java的IO流概述:
1.I/O是Input/Output的缩写,I/O技术是非常实用的技术,
用于处理设备之间的数据传输。如读/写文件,网络通讯等。
2.Java程序中,对于数据的输入/输出操作以“流(stream)” 的方式进行。
3.java.io包下提供了各种“流”类和接口,用以获取不同种类的数据,
并通过标准的方法输入或输出数据。
IO流的分类:
1.按操作数据单位不同分为:字节流(8 bit), 字符流(16 bit)。
2.按数据流的流向不同分为:输入流,输出流。
3.按流的角色的不同分为:节点流,处理流。
1.Java的IO流共涉及40多个类,实际上非常规则,都是从以上4个抽象基类派生的。
2.由这四个类派生出来的子类名称都是以其父类名作为子类名后缀。
节点流和处理流:
1.节点流:直接从数据源或目的地读写数据。
2.处理流:不直接连接到数据源或目的地,而是“连接”在已存在的流(节点流
或处理流)之上,通过对数据的处理为程序提供更为强大的读写功能。
InputStream和Reader:
1.程序中打开的文件I0资源不属于内存里的资源,垃圾回收机制无法回收该资源,
所以应该显式关闭文件10资源。
2.FileInputStream从文件系统中的某个文件中获得输入字节。FileInputStream
用于读取非文本数据之类的原始字节流。要读取字符流,需要使用FileReader。
InputStream概述:
Reader概述:
OutputStream和Writer:
OutputStream概述:
Writer概述:
节点流(或文件流)概述:
读取文件时:
1.建立一个流对象,将已存在的一个文件加载进流。
?FileReader fr = new FileReader(new File("Test.t"));
2.创建一个临时存放数据的数组。
?char[] ch = new char[1024];
3.调用流对象的读取方法将流中的数据读入到数组中。?fr.read(ch);
4.关闭资源。?fr.close();
写入文件时:
1.创建流对象,建立数据存放文件。
?FileWriter fw = new FileWriter(new File("Test.tx"));
2.调用流对象的写入方法,将数据写入流。
?fw.write("atguigu-songhongkang");
3.关闭流资源,并将流中的数据清空到文件中。?fw.close();
节点流注意事项:
1.定义文件路径时,注意:可以用“/”或者“"。
2.在写入一个文件时,如果使用构造器FileOutputStream(ile),则目录下有同名文件将被覆盖。
3.如果使用构造器FileOutputStream(ile,true),则目录下的同名文件不会被覆盖,
在文件内容末尾追加内容。
4.在读取文件时,必须保证该文件已存在,否则报异常。
5.字节流操作字节,比如: .mp3, .avi, .rmvb, mp4,jpg, .doc, .ppt
6.字符流操作字符,只能操作普通文本文件。最常见的文本文件: .txt, .java, .c, .cpp 等语言的源代码。
尤其注意.doc,ecel,ppt这些不是文本文件。
以上是关于Java之IO流用法总结的主要内容,如果未能解决你的问题,请参考以下文章
Java IO流学习总结七:Commons IO 2.5-FileUtils
Java IO流学习总结七:Commons IO 2.5-FileUtils
Java IO流学习总结八:Commons IO 2.5-IOUtils