java_IO流案例代码分析

package com.fy.t1;

//导包
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class TestTryCatchFinalOuputStream {
	public static void main(String[] args) {
		/**
		 * 1.定义字节输入、输出流,字节输出缓冲流
		 * 2.设置文件字节输出流,通过write()将内存的数据写入指定路径的文件中
		 * 3.文件字节输入流,通过read()读取文件
		 * 
		 */
		
		OutputStream os = null;//定义字节输出流,并定义为空
		InputStream is = null;//定义字节输入流,并定义为空
		BufferedOutputStream bos = null;//定义字节输出过滤流
		
		try {
			
			os = new FileOutputStream("C:\\Users\\15460\\Desktop\\1.txt");//父类引用指向子类,创建字节输出节点流,并设置了文件的路径
			os.write('B');//调用写方法,在指定路径的文件中写入字符
			
			is = new FileInputStream("C:\\Users\\15460\\Desktop\\1.txt");//父类引用指向子类,创建文件字节输入流,可以根据指定文件对象所指向的文件路径创建文件字节输入流对象
			System.out.println(is.read());//读取单个字节所对应的十进制数,返回-1表示读完了
			
			bos = new BufferedOutputStream(os);//定义字节输出缓冲流
		    bos.write(77);//输出写入文件,保存在缓冲区
		    
		    bos.flush();//将缓冲区的数据刷新到文件中
		    
		    //BufferedInputStream bis = new BufferedInputStream(is);

			
			while (true) {
				int n = is.read();//读取的十进制数赋值给变量n
				if(n == -1) break;//用读取的n是否为-1判断文件是否读取完毕,因为字节输入流读取完毕输出-1读取完毕跳出循环
				System.out.println((char)n );//输出字符
				
			}
		}catch (IOException e) {
//			System.out.println(e.getMessage());
			e.printStackTrace();//打印堆栈信息
			
		}finally {
			
			try {
				
				if (is != null) {//判断字节输入流读取是否读取完毕
					
					is.close();//关闭字节输入流
					
				}
				
				
				if (os != null) {//判断字节输出流是否为空
					
					os.close();//关闭字节输出流
					
				}
				os.close();//关闭字节输出流
				
			}catch (IOException e) {
				
				e.printStackTrace();//打印堆栈信息
				
			}
		}
	}
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值