java字节流6_java 20 - 6 加入了异常处理的字节输出流的操作

昨天坐了十几个钟的车回家,累弊了....

————————————割掉疲劳—————————————

前面的字节输出流都是抛出了异常不管,这次的加入了异常处理:

首先还是创建一个字节输出流对象,先给它赋值null

FileOutputStream out = null ;

接下来我们就看创建一个字节输出流的步骤中,会有几次可能出现异常的地方:

1、把out指向一个目录路径时,可能会异常。

try{

out = new FileOutputStream( "z"\\a.txt");

}//我根本就没z盘,肯定错误

catch(FileNotFoundException e){

e.printStackTrace();

}

2、往这个文件中添加数据时,可能会异常

try {

out.write("java".getBytes());

} catch (IOException e) {

e.printStackTrace();

}

3、释放资源时,可能会异常

try {

out.close();

} catch (IOException e) {

e.printStackTrace();

}

为了代码的严谨,上面的代码需要进一步改进:

FileOutputStream out = null;

try{

out = new FileOutputStream("z:\\a.txt");

out.write("java".getBytes());

//out.close(); 由于前面的两个如果有任一出错,这个就无法执行,所以得放到后面

}

catch(IOException e){

e.printStackTrace();

}

//如果out指向的路径不存在,那么都创建不了文件,所以就不用释放资源

if(out != null){

try{

out.close();

}

catch(IOException e){

e.printStackTrace();

}

}

java 20 - 4 IO流概述和一个简单例子解析

IO流的分类:  流向: 输入流 读取数据  输出流 写出数据 数据类型:  字节流  字节输入流 读取数据 InputStream  字节输出流 写出数据 OutputStream  字符流  字符 ...

字节输出流FileOutputStream

#字节流 字节输出流FileOutputStream 创建输出流对象 OutputStream 流对象是一个抽象类,不能实例化.所以,我们要找一个具体的子类 :FileOutputStream. 查看 ...

java 20 - 9 带有缓冲区的字节输出流和字节输入流

由之前字节输入的两个方式,我们可以发现,通过定义数组读取数组的方式比一个个字节读取的方式快得多. 所以,java就专门提供了带有缓冲区的字节类: 缓冲区类(高效类) 写数据:BufferedOutpu ...

java 20 - 7 字节输入流的操作

字节输入流操作步骤: A:创建字节输入流对象 B:调用read()方法读取数据,并把数据显示在控制台 C:释放资源 步骤A.C 略过,说步骤B  读取数据的方式:  A:int read():一次读取 ...

java 20 - 5 字节输出流写出数据的一些方法

首先回顾下 字节输出流操作步骤:  A:创建字节输出流对象  B:调用write()方法  C:释放资源 创建字节流输出对象 FileOutputStream fos = new FileOutput ...

《深入理解Java虚拟机》-----第8章 虚拟机字节码执行引擎——Java高级开发必须懂的

概述 执行引擎是Java虚拟机最核心的组成部分之一.“虚拟机”是一个相对于“物理机”的概念 ,这两种机器都有代码执行能力,其区别是物理机的执行引擎是直接建立在处理器.硬件.指令集和操作系统层面上的,而 ...

Java(20~24)

1.Collection中的集合称为单列集合,Map中的集合称为双列集合(键值对集合). 2.Map常用方法:map.put()   map.get()   map.remove()   map.ke ...

java 20 -10 字节流四种方式复制mp3文件,测试效率

电脑太渣,好慢..反正速率是: 高效字节流一次读写一个字节数组 > 基本字节流一次读写一个字节数组 > 高效字节流一次读写一个字节 > 基本字节流一次读写一个字节 前两个远远快过后面 ...

java 20 - 8 字节流的文件复制以及汉字在计算机中的存储方式

复制文本文件:把当前目录下的FileIntputStream.java文件里面的内容复制到当前目录的b.txt文件中 分析: 数据源: FileIntputStream.java -- 读取数据 -- ...

随机推荐

内存不足时,调用ajax报的错

在error中遍历出来的异常   很难见

ssh 返回错误 Too many authentic authentication failures for root 的时候检查 ssh 配置

路径 cd /etc/ssh ls -ltr sudo vi sshd_config 改为以下内容(yes): PermitRootLogin yes

php基础小知识

1.php中的双引号可以正确的解析变量与转义序列,而单引号只会按照声明原样显示:双里面的字段会经过编译器解释,然后再当作HTML代码输出:单引号里面的不进行解释,直接输出. 2.转义序列是针对源代码的 ...

navicat 随笔提示的快捷键

1.ctrl+q 打开查询窗口2.ctrl+/ 注释sql语句3.ctrl+shift +/ 解除注释4.ctrl+r 运行查询窗口的sql语句5.ctrl+shift+r 只运行选中的sql语句6. ...

Number Sequence(kmp)

Number Sequence Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

Android开发8:UI组件TextView,EditText,Button

版本:Android4.3 API18 学习整理:liuxinming TextView 概述 TextView直接继承了View(EditText.Button两个UI组件类的父类) TextVie ...

前端JS来控制选中的项

< script type = "text/javascript" > function change(){ document.getElementById(&quot ...

测试开发之前端——No5&period;HTML5中的表单事件

表单事件 由 HTML 表单内部的动作触发的事件. 适用于所有 HTML 5 元素,不过最常用于表单元素中: 属性 值 描述 onblur script 当元素失去焦点时运行脚本 onchange s ...

nginx:负载均衡实战(四)nginx&plus;keepalived配置双机热备

1.下载安装 下载keepalived地址:http://www.keepalived.org/download.html 解压安装: tar -zxvf keepalived-.tar.gz 安装o ...

&dollar;&period;getJSON的缓存问题处理

今天遇到jQuery.getJSON的缓存问题.如果其调用的url之前曾经调用过的话,回调函数就会直接在缓存里面取得想要得值,而不是进入到后台,调用存储过程了.这是一个比较郁闷的问题.不修改的话,用户 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值