• Java利用BufferedWriter写文本文件


    在本地写入保存的操作, 很多时候我们习惯使用Outputstream, 而其实写文本文件的时候, Java提供一个很好的工具给我们 ----- writer. 由于它是针对文本类型的文件操作, 所以如果是对TXT, LOG等这类文本文件进行写操作时,  它的效率比Outputstream高不少. 以下是一个栗子.

    public static void main(String[] args) {
        OutputStreamWriter ops = null;
        BufferedWriter bw = null; 
        File file;
        File newFile;
        String jsonStr2="hello world";
        try {
            String name="文件名称";
            file = new File("D:/workspace/存放路径1",name + ".txt");
            newFile = new File("D:/workspace/存放路径2", name +".new");
            newFile.createNewFile();
            ops = new OutputStreamWriter(new FileOutputStream(file), "UTF-8");
            bw = new BufferedWriter(ops);
            bw.append(jsonStr2);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if (bw != null) {
                    bw.flush();
                    bw.close();
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        }

    writer的flush 和 close操作必须放在finally那里, 因为进行读写操作时, 数据先读取到缓存中, 再从缓存中读取写入文件.   因此从缓冲区读完数据后, 必须flush清空缓冲区, 然后close关闭读写流.

    ========================================================================================== 我希望每一篇文章的背后,都能看到自己对于技术、对于生活的态度。 我相信乔布斯说的,只有那些疯狂到认为自己可以改变世界的人才能真正地改变世界。面对压力,我可以挑灯夜战、不眠不休;面对困难,我愿意迎难而上、永不退缩。 其实我想说的是,我只是一个程序员,这就是我现在纯粹人生的全部。 ==========================================================================================
  • 相关阅读:
    严格模式
    排序,求最大值最小值
    原型继承
    android 系统
    BASE64Decoder
    jstl
    list  遍历
    2015GitWebRTC编译实录9
    2015GitWebRTC编译实录8
    2015GitWebRTC编译实录7
  • 原文地址:https://www.cnblogs.com/weihuang6620/p/6772861.html
Copyright © 2020-2023  润新知