IO流(三)文件流
来源:互联网 发布:手机ui界面设计软件 编辑:程序博客网 时间:2024/05/21 18:50
节点流:可以从或向一个特定的地方(节点)读写数据。如FileOutputStream、FileReader等
处理流:是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现数据读写。如BufferedReader。处理流的构造方法总是要带一个其他的流对象做参数。一个流对象经过其他流的多次包装,称为流的链接。
FileOutputStream
FileOutputStream 用于写入诸如图像数据之类的原始字节的流。要写入字符流,请考虑使用 FileWriter。
常用构造方法
FileOutputStream(File file) //创建一个向file对象表示的文件中写入数据的文件输出流FileOutputStream(File file,boolean append) //同上,如果第二个参数为 true,则将字节写入文件末尾处,而不是写入文件开始处。FileOutputStream(String name)FileOutputStream(String name,boolean append)
常用方法
void close() //关闭流write(byte[] b) //将b.length个字节从指定byte数组写入此文件输出流中write(byte[] b,int off,int len) //将指定byte数组中从偏移量off开始的len各字节写入此文件输出流write(int b) //将指定字节写入此文件输出流
Demo
将”Hello World”写入到指定文件中
public class TestFile { public static void main(String[] args) throws IOException{ File file = new File("D:/io/a.txt"); FileOutputStream fos = new FileOutputStream(file); fos.write("Hello World".getBytes()); fos.close(); }}
将”java IO流”追加到”Hello World”后
public class TestFile { public static void main(String[] args) throws IOException{ File file = new File("D:/io/a.txt"); FileOutputStream fos = new FileOutputStream(file,true); fos.write(" java IO流".getBytes()); fos.close(); }}
FileInputStream
FileInputStream 用于读取诸如图像数据之类的原始字节流。要读取字符流,请考虑使用 FileReader。
常用构造方法
FileInputStream(File file) //通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的 File 对象 file 指定FileInputStream(String name) //通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的路径名 name 指定。
常用方法
void close() //关闭流read() //从此输入流中读取一个数据字节read(byte[] b) //从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中。read(byte[] b,int off,int len) // 从此输入流中将最多 len 个字节的数据读入一个 byte数组从off位置开始
Demo
以字节形式读取
public class TestFile { public static void main(String[] args) throws IOException{ File file = new File("D:/io/a.txt"); FileInputStream fis = new FileInputStream(file); int len ; while((len = fis.read())!= -1){ System.out.print((char) len); } fis.close(); }}
以字节数组形式读取
public class TestFile { public static void main(String[] args) throws IOException{ File file = new File("D:/io/a.txt"); FileInputStream fis = new FileInputStream(file); int len ; byte[] b = new byte[10]; while((len = fis.read(b))!= -1){ String s = new String(b,0,b.length); System.out.print(s); } fis.close(); }}
实现文件的复制
public class TestFile { public static void main(String[] args) throws IOException{ File file = new File("D:/io/a.txt"); FileInputStream fis = new FileInputStream(file); FileOutputStream fos = new FileOutputStream("D:/io/acopy.txt"); int len ; byte[] b = new byte[1024]; while((len = fis.read(b))!= -1){ fos.write(b); } fis.close(); fos.close(); }}
FileWriter
public class FileWriterextends OutputStreamWriter
FileWriter 用于写入字符流。要写入原始字节流,请考虑使用 FileOutputStream。
常用构造方法
FileWriter(File file) //根据给定的File对象构造一个FileWriter对象FileWriter(File file,boolean append) //根据给定的File对象构造一个FileWriter对象FileWriter(String fileName,boolean append) //据给定的文件名以及指示是否附加写入数据的 boolean 值来构造 FileWriter 对象。
常用方法
继承自Writer的方法
void writer()Writer append(char c)void flush() //刷新该流的缓冲close() //关闭流
写入文件
public class Demo { public static void main(String[] args) throws IOException{ File file = new File("D:/io/a.txt "); Writer writer = new FileWriter(file); writer.write("哈哈哈"); writer.close(); }}
FileReader
基本操作和FileInputStream差不多,只不过FileReader是面向字符的。
阅读全文
0 0
- IO流(三)文件流
- 文件与IO(三)之缓冲流
- IO流循序渐进三
- IO流之三
- IO流系列(三)
- IO流(三)
- Java IO流(三)
- IO流(三)
- Java文件与IO(三)之缓冲流
- 文件IO编程三
- IO、文件、NIO【三】
- IO流,文件流
- IO流文件复制
- IO流文件复制
- IO流读写文件
- 文件IO流
- IO流(切割文件)
- 文件IO流
- 自定义 View 初探,一个简单的验证码View (一)
- python中counter()记数
- SpannableString同时设置ClickableSpan和ForegroundColorSpan时ForegroundColorSpan不生效的解决办法
- HDU
- Ubuntu编码服务器搭建--续(eCos编译问题)
- IO流(三)文件流
- 稻草人总结之WebView的介绍
- 指定版本安装selenium(python)
- 8.14
- Codeforces 839 D. Winter is here 容斥
- USACO Section 1.3 Combination Lock
- 8.14
- 7834:分成互质组
- 机器学习之Grid World的Monte Carlo算法解析