java输入输出流03

类型 字符流 字节流
File文件
FileReader、FileWriter FileInputStream、FileOutputStream
内存数组
CharArrayReader、CharArrayWriterByteArrayInputStream、ByteArrayOutputStream
内存字串
StringReader、 StringWriter
管道 PipedReader、 PipedWriter PipedInputStream、 PipedOutputStream
节点流
文件节点流
FileInputStream和FileOutputStream是文件字节流,是一种节点流
文件字节输入流的构造方法:
FileInputStream(“文件名称”),如果文件不存在则FileNotFoundException
FileInputStream(File)
文件字节输出流的构造方法:
FileOutputStream(“文件名称”) 如果文件不存在则新建文件,如果文件存在则覆盖文件内容
FileOutputStream(String name文件名称, boolean append是否采用追加方式)
FileReader和FileWriter类似
FileInputStream和FileOutputStream两个类属于结点流,第一个类的源端和第二个类的目的端都是磁
盘文件,它们的构造方法允许通过文件的路径名来构造相应的流。
如:
FileInputStream infile = new FileInputStream(“myfile.dat”);
FileOutputStream outfile = new FileOutputStream(“results.dat”);
要注意的是,构造FileInputStream, 对应的文件必须存在并且是可读的,而构造FileOutputStream时,
如输出文件已存在,则必须是可覆盖的。
要求:将d盘上的TestFile.java拷贝到e盘,并命名为dd.txt
try (InputStream is = new FileInputStream(“d:/TestFile.java”);
OutputStream os=new FileOutputStream(“e:\dd.txt”);
) {
byte[] buffer=new byte[8192];
int len=is.read(buffer);
while(len>0){
os.write(buffer,0,len);
len=is.read(buffer);
}
}catch(IOException e){
需求1:拷贝c:\windows到d:\ddd文件夹
需求2:设计程序将aa.java和bb.java两个文件合并成一个文件,命名为cc.txt。
需求3:设计程序将cc.txt按尺寸等分拆分成两个文件c1.txt和c2.txt。
内存数组节点
如果文本则使用char[],如果二进制则使用byte[]
构造器方法
CharArrayReader(char[] buf)其中char[]就是数据的来源,也就是说Reader就是从char[]中读取数

CharArrayRead(char[] buf, int offset, int length)
CharArrayWriter用于实现向一个字符数组中写入数据,这个数组可以自动调整大小
ByteArrayInputStream、ByteArrayOutputStream和CharArrayReader以及CharArrayWriter类似,支
持操作的内容不同而已,操作byte[]与char[]
内存字串流
StringReader用于从一个字串String中读取数据
StringWriter用于给一个StringBuffer中写入数据,实现一个可边长的字串
e.printStackTrace();
}
构造输出文件流时可以使用两种不同的方式
OutputStream os=new FileOutputStream(“e:\dd.txt”); 如果文件不存在则自动创建;如
果文件存在则进行覆盖
OutputStream os=new FileOutputStream(“e:\dd.txt”,true),这里的boolean类型参数
表示是否采用追加的方式写入文件
String str=“亚洲说:‘我爱小黑’”;
StringReader sr=new StringReader(str);
int cc;
while((cc=sr.read())!=-1)
System.out.print((char)cc);
sr.close();
处理类型 字符流 字节流
缓存 BufferedReader、BufferedWriter BufferedInputStream、
BufferedOutputStream
过滤处理 FilterReader、FilterWriter FilterInputStream、
FilterOutputStream
桥接处理 InputStreamReader、
OutputStreamWriter
对象序列化
处理
ObjectInputStream、
ObjectOutputStream
数据转换 DataInputStream、
DataOutputStream
行数统计 LineNumberReader LineNumberInputStream
回滚处理 PushbackReader PushbackInputStream<

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值