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關閉讀寫流.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM