377字符流的续写和换行和378使用try_cath_finaily处理流中的异常
字符输出流的续写和换行
FileWriter fw = new FileWriter("D:\\b.txt",true);//加上appen:true
// 续写
for (int i = 0; i < 10; i++) {
fw.write("hello"+i+"\r\n"); //windows换行 \r\n linux:/n mac:/r
}
fw.close();
}
public static void main(String[] args) throws IOException {
FileOutputStream fos = new FileOutputStream("D:\\b.txt",true);
for (int i = 1; i <10 ; i++) {
fos.write("你好".getBytes());
fos.write("\r\n".getBytes());
}
fos.close();
}
使用try--catch--finally处理流中的异常
Java通过面向对象的方法来处理异常。 在一个方法的运行过程中,如果发生了异常,则这个方法生成代表该异常的一个对象,并把它交给运行时系统,运行时系统寻找相应代码来处理这一异常。
我们把生产例外对象并把它提交给运行时系统的过程称为throw一个异常。
运行时系统在方法的调用栈中查找,从生成例外的方法开始回溯,知道找到相应的异常处理的方法为止,这一过程称为捕获(catch)一个例外。
public static void main(String[] args) {
FileWriter w = null;//变量在调用时必须具有初始值
try {
w = new FileWriter("c:\\Users\\shanyang\\Desktop\\222", true);//因为FileWriter会抛异常所以放进try中
for (int i = 0; i < 10; i++) {
w.write("HelloWorld" + i + "\n\r");
}
} catch (IOException e) {//异常信息
e.printStackTrace();
} finally {//一定会执行的代码
if (w != null) {//设置判段条件 如果对象是空的话就不执行下列代码
try {
w.close();
} catch (IOException e) {//抛出上面的异常
e.printStackTrace();
}
}
}
}

浙公网安备 33010602011771号