ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

字符输出流的续写和换行以及处理流中的异常

2022-07-14 13:31:51  阅读:185  来源: 互联网

标签:fw 换行 异常 流中 try finally IOException FileWriter 续写


字符输出流的续写和换行

续写:追加写:使用两个参数的构造方法

  FileWriter(String fileName,boolean)

  FileWriter(File file,boolean append)

  参数:

    String fileName,File file写入数据的目的地

    boolean append:续写开关

      true:不会创建新的文件覆盖源文件,可以续写;

      false:创建新的文件覆盖源文件

public static void main(String[] args) throws IOException {
FileWriter fw = new FileWriter("d.txt",true);
for (int i = 0; i < 10; i++) {
fw.write("HellWorld"+i);
}
fw.close();
}

文件中内容:

 

 

换行:换行符号
windows:\r\n
linux:/n
mac:/r

    public static void main(String[] args) throws IOException {
        FileWriter fw = new FileWriter("d.txt",true);
        for (int i = 0; i < 10; i++) {
            fw.write("HellWorld"+i+"\r\n");
        }
        fw.close();
    }

文件内容:

 

 

 

 

 

 

 

 

使用try_cath_finally处理流中的异常

在JDK1.7之前使用try_catch_finally处理流中的异常

格式:
try{
  可能会产生异常的代码
}catch(异常类变量 变量名){
  异常的处理逻辑
}finally{
  一定会执行的代码
  资源释放
}

 public static void main(String[] args) {
        //提高fw的作用域,让finally可以使用
        FileWriter fw=null;
        try {
            //可能会产生异常的代码
            fw = new FileWriter("d.txt",true);
            for (int i = 0; i < 10; i++) {
                fw.write("HellWorld"+i+"\r\n");
            }
        } catch (IOException e) {
            //异常的处理逻辑
            System.out.println(e);
        } finally {
            //一定会执行的代码
            // 创建对象失败了,fw默认值就是null,null是不能调用方法的,会抛出NullPointerException,需要加一个判断,不是Null再释放
            if (fw!=null) {
                try {
                    //fw.close方法声明抛出了IOException异常对象,所以我们就要处理这个异常对象,要么throws,要么try——catch
                    fw.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }

 

标签:fw,换行,异常,流中,try,finally,IOException,FileWriter,续写
来源: https://www.cnblogs.com/xjw12345/p/16477363.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有