黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 java filewriter的用法及FileReader的用法

java filewriter的用法及FileReader的用法

更新時間:2019-08-27 14:09:11 來源:動力節點 瀏覽3254次

  


今天動力節點java學院小編為大家介紹java filewriter的用法及FileReader的用法,希望對大家有幫助,下面就隨小編一起看看java filewriter的用法及FileReader的用法吧。


FileWriter 文件輸出流是用于將數據寫入 File 或 FileDescriptor 的輸出流。文件是否可用或能否可以被創建取決于基礎平臺。特別是某些平臺一次只允許一個FileOutputStream(或其他文件寫入對象)打開文件進行寫入。在這種情況下,如果所涉及的文件已經打開,則此類中的構造方法將失敗。


  FileOutputStream 用于寫入諸如圖像數據之類的原始字節的流。要寫入字符流,請考慮使用 FileWriter。


  FileWriter共有五個構造方法


  FileWriter(File file) 根據給定的 File 對象構造一個 FileWriter 對象。


  FileWriter(File file, boolean append) 根據給定的 File 對象構造一個 FileWriter 對象。


  FileWriter(String fileName) 根據給定的文件名構造一個 FileWriter 對象。


  FileWriter(String fileName, boolean append) 根據給定的文件名以及指示是否附加寫入數據的 boolean 值來構造 FileWriter 對象。


  FileWriter(FileDescriptor fd) 構造與某個文件描述符相關聯的 FileWriter 對象。


  其中方法可以分為三組,入參帶File的為一組,入參帶String 的為一組,這兩組方法基本相似。


  帶File 的構造方法是直接傳入文件來構造FileWriter對象,而帶String 的構造方法,則必須先通過new File(String path) 來構造File 文件,再來構造FileWriter對象。


  再看 File file 入參的兩個方法


  FileWriter(File file) 和 FileWriter(File file, boolean append) 的區別在于后面多了一個boolean append 參數.


  append 如果為 true,則將字節寫入文件末尾處,而不是寫入文件開始處。


  append 相當于指定了寫入的方式,是覆蓋寫還是追加寫。


  append 為true時,追加寫,相當于Linux 里面的 >> 操作符;


1566885017548519.png


package cn.itcast.demo3;

import java.io.File;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;


public class Java_2 {

    public static void main(String args[]) {

        File f1=new File("D://a.txt");

        //*********Found**********

        File f2=new File("D://b.txt");

        try {

            //*********Found**********

            FileReader fr=new FileReader(f2);

            FileWriter fw=new FileWriter(f1,true);

            int b;

            //*********Found**********

            while(( b=fr.read() ) != -1 )  fw.write(b);

            fr.close();

            fw.close();

        } catch(IOException e) {

            e.printStackTrace();

        }

        System.out.println("has done!");

        //*********Found**********

        if(f2.delete()) System.out.print("SUCCESS!");

    }

}


1566885071286434.png

1566885091168756.png


append 為false時,覆蓋寫,相當于Linux 里面的 > 操作符。


1566885130826868.png

1566885152437400.png





1、java filewriter的用法



1566885182662234.png

package cn.itcast.demo3;

import java.io.File;

import java.io.FileWriter;

import java.io.IOException;


public class Java_2 {

    public static void main(String args[]) throws IOException {

    /** 

         * 創建一個可以往文件中寫入字符數據的字符流輸出流對象 

         * 創建時必須明確文件的目的地 

         * 如果文件不存在,這回自動創建。如果文件存在,則會覆蓋。 

         * 當路徑錯誤時會拋異常 

         *  

         * 當在創建時加入true參數,實現對文件的續寫。 

         * 當在創建時加入false參數,實現對文件的覆蓋。 

         */  

        File f1=new File("D://a.txt");

        FileWriter fw = new FileWriter(f1, true);

        /** 

         * 調用該對象的write方法,向文件寫入字符。 

         *  

         * 其實寫入到了臨時存儲緩沖區中 

         */  

         fw.write("haha");

         //進行刷新,將字符寫到目的地中。

         fw.flush(); 

         //關閉流,關閉資源。在關閉前會調用flush方法 刷新緩沖區。關閉后在寫的話,會拋IOException

         fw.close(); 

        

    }

}


1566885263956709.png


關于FileWriter的的異常處理。


1566885323518407.png

package cn.itcast.demo3;

import java.io.File;

import java.io.FileWriter;

import java.io.IOException;


public class Java_2 {

    public static void main(String args[]){

    /** 

         * 創建一個可以往文件中寫入字符數據的字符流輸出流對象 

         * 創建時必須明確文件的目的地 

         * 如果文件不存在,這回自動創建。如果文件存在,則會覆蓋。 

         * 當路徑錯誤時會拋異常 

         *  

         * 當在創建時加入true參數,實現對文件的續寫。 

         * 當在創建時加入false參數,實現對文件的覆蓋。 

         */  

        File f1=new File("D://a.txt");

        FileWriter fw = null;

try {

fw = new FileWriter(f1, false);

fw.write("hello" + "world!"); 

} catch (IOException e) {

e.printStackTrace();

}finally {

            if (fw != null){  

                try {  

                fw.flush(); 

                    fw.close();  

                } catch (IOException e) {  

                    throw new RuntimeException("關閉失敗!");  

                }  

            }

}

        

    }

}


1566885368654979.png



2、java FileReader的用法


示例代碼一,文件讀取的第一種方式,示例代碼二,文件讀取的第二種方式,第二種是常用的,必須會。



package cn.itcast.demo3;

import java.io.File;

import java.io.FileReader;

import java.io.IOException;


public class Java_2 {

    public static void main(String args[]){

    /*

    * 對文件的讀取一共有兩種方式,先介紹第一種讀取方式

    * 步驟:

    * 1.創建文件讀取流對象,和指定名稱的文件相關聯,如果不存在指定文件的話,發生FileNotFoundException。

    * 2.調用read方法,由于read一次只讀一個字符,所以要用while循環。

    * 3.關閉資源塊。

         */  

        File f1=new File("D://a.txt");

        FileReader fr = null;

try {

fr = new FileReader(f1);

int ch = 0;

//記住即可,read方法如果沒有可讀取的了,則返回-1

//所以就是一直讀取,并將讀取的內容存入ch,一直到結尾

while((ch=fr.read()) != -1){

System.out.print((char)ch + " ");

}

} catch (IOException e) {

e.printStackTrace();

}finally {

            if (fr != null){  

                try {  

                fr.close();  

                } catch (IOException e) {  

                    throw new RuntimeException("讀取失敗!");  

                }  

            }

}

        

    }

}


1566885437479790.png





package cn.itcast.demo3;

import java.io.File;

import java.io.FileReader;

import java.io.IOException;


public class Java_2 {

    public static void main(String args[]){

/*

* 文件讀取的第二種方式:通過字符數組進行讀取

* 步驟和第一種基本相似,但其中就是多創建一個字符數組

         */  

        File f1=new File("D://a.txt");

        FileReader fr = null;

try {

fr = new FileReader(f1);

char[] buf=new char[1024];

//read(char [])返回讀到的字符個數

int num=0;

//讀取文件并把它存入buf中,用num返回讀到字符的個數,一直讀到結尾

while((num=fr.read(buf)) != -1){

//new String(字符串,開始位置,結尾位置)

//字符數組里仍有空白沒有讀入的位置,所以不要了

System.out.print((new String(buf,0,num)));

}

} catch (IOException e) {

e.printStackTrace();

}finally {

            if (fr != null){  

                try {  

                fr.close();  

                } catch (IOException e) {  

                    throw new RuntimeException("讀取失敗!");  

                }  

            }

}

        

    }

}



1566885479212810.png



以上就是動力節點java學院小編介紹的“java filewriter的用法及FileReader的用法”的內容,希望對大家有幫助,更多精彩內容請繼續關注動力節點java學院官網。



提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 黄漫画黄网站在线观看 | 黄色爱爱网站 | 国产一卡二卡≡卡四卡无人 | 18在线观看的 | 天堂网a| 羞羞涩涩漫画 | 国产69精品久久久久777 | 日韩城人免费 | 三级伦理在线 | 欧美精品在线一区二区三区 | 干干日日 | 婷婷综合久久狠狠色99h | 国产黄在线免费观看 | 公又粗又长又大又深好爽日本 | 九九精品在线播放 | 亚洲国产成人影院播放 | 日韩午夜大片 | 精品国产影院 | 高清色惰www日本午夜 | 在线观看视频99 | 影音先锋激情 | 综合色久七七综合七七蜜芽 | 亚洲永久精品一区二区三区 | 永久免费观看午夜视频在线 | 在线综合+亚洲+欧美中文字幕 | 久久成人午夜 | 国产色在线com | 久久精品国产麻豆不卡 | 欧美一区视频在线 | 在线精品播放 | 美女视频黄是免费的 | 欧美日b视频 | 精品久久一区 | 国外免费精品视频在线观看 | 老妇激情毛片 | 欧美日韩午夜视频 | 国产精品久久久久久久久免费观看 | 日韩免费一级a毛片在线播放一级 | 中文字幕一区二区三区视频在线 | 九九九日产 | 国产高清在线免费视频 |