java基础-io流

io流中的子类共性成员方法 OutputStream

close 关闭输出流开关并释放与此流的任何系统资源
flush 刷新输出流并强制任何缓冲的输出字节被写出
write(byte[] b) 将b.length字节从指定的字节数组写入输出流
write(byte[] b, int off ,int len) 从指定的字节数组写入 len字节 从偏移量 off开始输出到此输出流
write(int b) 将指定的字节输出流

FileOutputStream extends OutputStream

FileOutputStream作用 把内存数据写入硬盘中
构造方法:
FileOutputStream(String name) 创建一个向具有指定名称的文件中写入数据的输出文件流
FileOutputStream(File file) 创建一个指定的 File 对象表示的文件中写入数据的文件输出流
String name 目的地是一个文件的路径
File file 目的地是一个文件

FileOutoutStream(String name,boolean oppend)
FileOutoutStream(File file,boolean oppend)
参数:
String name File file写入数据的目的地
boolean oppend 追加快关 true创建对象不会覆盖原文件 继续在文件末尾追加写数据 false创建一个新文件 覆盖原文件

String string = new String();
string.getBytes(); 将字符串转化为字节
String(byte[] b) 把字节数组转化为字符串
String(byte[] b , int offset , int length) 把字节数组的一部分转化为字符串 offset转换的开始个数 length转换的字节个数

换行windows:\r\n
linux:/n
“\r\n”.getBytes();

InputStream类 方法

close();关闭并释放资源
int read(byte[] b); 从输入流中读取一定的字节 将其存在数组b中
byte 起缓冲作用每次存取读取到的多个字节 数组长度一般是1024(1kb)或者整数倍
int 每次读取到的有效字节个数
int read() ; 从输入流中读取一个字节

FileInputStream extends InputStream

FileInputStream 文件字节输入流
作用:把硬盘文件数据 读取到内存中使用

构造方法
FileInputStream(String name);
FileInputStream(File file);
String name 文件路径
File file 文件

字符流 java.io.FileReader extends InputStreamReader extends Reader

FileReader文件字符输入流
构造方法:
FileReader(String fileName);
FileReader(File file);
参数:
String fileName 文件路径
File file 文件

String(char[] value) 把字符数组转化为字符串
String(char[] value ,int offset , int count) 把字符数组一部分转化为字符串 offset数组的开始索引 count转换的个数

File fr = new File(“c:\c.txt”); //存储读取到的多个字符
char[] cs = new char[1024];
int len = 0; //每次读取的有效字符个数
while(len = fr.read(cs)!=-1){
System.out.println(new String(cs,0, len));
fr.close(); //释放资源
}

Writer字符输出流 是所有字符输出的顶层父类 是一个抽象类

write(int c ) 写入单个字符
write(charp[] cbuf) 写入字符数组
write(char[] cbuf , int off , int len) 写入字符数组的一部分 off数组开始的索引 len写的字符个数
write(String str) 写入字符串
write(String str , int off , int len) 写入字符数组的一部分 off数组开始的索引 len写的字符个数
flush() 刷新该流的缓冲
close 关闭流 但要刷新它

FileWriter extends OutputStreamWriter extends Writer

FileWriter 文件字符输出流 把内存中字符数据写入文件中
构造方法
FileWriter(File file) 根据给定的 File 对象构造一个 FileWriter 对象
FileWriter(String fileName) 根据给定的文件名对象构造一个 FileWriter 对象
参数:写入数据的目的地
String fileName:文件路径
File file: 是一个文件

字符输出流使用步骤 (重点)
1.创建 FileWriter 对象构造方法中绑定要写入数据的目的地
2.使用 FileWriter 中的方法write 把数据写入到内存缓冲区(字符转换成字节的过程)
3.使用 FileWriter 中的flush 把内存缓冲区的数据 刷新到文件中
4.释放资源(会先把内存缓冲区的数据刷新到文件中)

续写

FileWriter(String fileName , boolean oppend)
FileWriter(File file , boolean oppend)
boolean oppend续写开关 true不会创建新的文件覆盖源文件 false 创建新文件覆盖源文件
String fileName File file 写入数据的目的地
换行
windows:\r\n
linux:/n

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值