最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JAVA文件讀取常用工具類(8種)

 更新時(shí)間:2021年08月27日 12:10:50   作者:小阿杰  
JAVA操作文件在經(jīng)常會使用到,本文匯總了部分JAVA操作文件的讀取常用工具類,主要介紹了8種方法,具有一定的參考價(jià)值,感興趣的可以了解一下

JAVA操作文件在經(jīng)常會使用到,本文匯總了部分JAVA操作文件的讀取常用工具類,希望可以幫到大家。直接上代碼。

一、讀取文件成字節(jié)

將文件內(nèi)容轉(zhuǎn)為字節(jié),需要使用到FileInputStream文件字節(jié)輸入流,將文件輸入到文件字節(jié)輸入流中,使用FileInputStream的available()方法獲取與之關(guān)聯(lián)的文件的字節(jié)數(shù),然后使用read()方法讀取數(shù)據(jù),最后記得關(guān)閉文件字節(jié)流即可。

//讀取文件成字節(jié)數(shù)組
  public static byte[] file2byte(String path){
        try {
            FileInputStream in =new FileInputStream(new File(path));
            byte[] data=new byte[in.available()];
            in.read(data);
            in.close();
            return data;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

二、將字節(jié)寫入文件

與一中的讀取文件成字節(jié)類似,字節(jié)寫入文件使用FileOutputStream流,即可將字節(jié)寫入到文件中。調(diào)用FileOutputStream的write()方法,寫入數(shù)據(jù),之后關(guān)流。

 //將字節(jié)數(shù)組寫入文件
  public static void byte2file(String path,byte[] data) {
        try {
            FileOutputStream outputStream  =new FileOutputStream(new File(path));
            outputStream.write(data);
            outputStream.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

三、按行讀取文件成list

經(jīng)常遇到需要將一個(gè)文檔中的文本按行輸出,這是我們可以使用BufferedReader 和 InputStreamReader流處理。具體代碼如下。

 //按行讀取文件成list
  public static ArrayList<String> file2list(String path,String encoder) {
        ArrayList<String> alline=new ArrayList<String>();
        try {
            BufferedReader in =new BufferedReader(new InputStreamReader(new FileInputStream(path),encoder));
            String str=new String();
            while ((str=in.readLine())!=null) {
                alline.add(str);
            }
            in.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return alline;
    }

四、輸出list到文件

 //輸出list到文件
  public static void list2file(String path,ArrayList<String> data,String encoder) {
        try {
            BufferedWriter out =new BufferedWriter(new OutputStreamWriter(new FileOutputStream(path),encoder));
            for (String str:data) {
                out.write(str);
                out.newLine();
            }
            out.flush();
            out.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

五、從標(biāo)準(zhǔn)輸入中讀入

  //從標(biāo)準(zhǔn)輸入中讀入
  public static String system2str() throws IOException{
        BufferedReader stdin=new BufferedReader(new InputStreamReader(System.in));
        return stdin.readLine();
    }

六、讀取文件成字符串

//讀取文件成字符串
  public static String file2str(String path,String encoder){
        StringBuilder sb=new StringBuilder();
        try {
            BufferedReader in =new BufferedReader(new InputStreamReader(new FileInputStream(path),encoder));
            String str=new String();
            while ((str=in.readLine())!=null) {
                sb.append(str);
            }
            in.close(); 
        } catch (Exception e) {
            e.printStackTrace();
        }
        return sb.toString();
    }

七、輸出字符串到文件

 //輸出字符串到文件
  public static void str2file(String path,String data,String encoder){
        try {
            BufferedWriter out =new BufferedWriter(new OutputStreamWriter(new FileOutputStream(path),encoder));
            out.write(data);
            out.flush();
            out.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

八、讀取文件成數(shù)據(jù)矩陣

//讀取文件成數(shù)據(jù)矩陣
  public static ArrayList<Double> file2matrix(String path){
        ArrayList<Double> alldata=new ArrayList<Double>();
        try {
            DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInputStream(path)));
            //利用DataInputStream來讀數(shù)據(jù)
            while(true)
            {
                alldata.add(in.readDouble());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return alldata;
    }

總結(jié)

對文件的操作方式還有很多,本文使用的只是一個(gè)基礎(chǔ)的參考示例,到此這篇關(guān)于JAVA文件讀取常用工具類(8種)的文章就介紹到這了,更多相關(guān)JAVA文件讀取內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java動(dòng)態(tài)腳本Groovy

    Java動(dòng)態(tài)腳本Groovy

    本文介紹了Java動(dòng)態(tài)腳本Groovy,Groovy是用于Java虛擬機(jī)的一種敏捷的動(dòng)態(tài)語言,它是一種成熟的面向?qū)ο缶幊陶Z言,既可以用于面向?qū)ο缶幊?,又可以用作純粹的腳本語言。使用該種語言不必編寫過多的代碼,同時(shí)又具有閉包和動(dòng)態(tài)語言中的其他特性,需要的朋友可以參考一下
    2021-12-12
  • Java教程package和import訪問控制的步驟詳解

    Java教程package和import訪問控制的步驟詳解

    這篇文章主要為大家介紹了Java教程package和import訪問控制的步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • 談?wù)凧ava類型中ParameterizedType,GenericArrayType,TypeVariabl,WildcardType

    談?wù)凧ava類型中ParameterizedType,GenericArrayType,TypeVariabl,Wild

    這篇文章主要介紹Java類型中ParameterizedType,GenericArrayType,TypeVariabl,WildcardType的相關(guān)資料,需要的朋友可以參考下
    2015-10-10
  • java多線程編程之使用Synchronized塊同步變量

    java多線程編程之使用Synchronized塊同步變量

    我們可以通過synchronized塊來同步特定的靜態(tài)或非靜態(tài)方法。要想實(shí)現(xiàn)這種需求必須為這些特性的方法定義一個(gè)類變量,然后將這些方法的代碼用synchronized塊括起來,并將這個(gè)類變量作為參數(shù)傳入synchronized塊
    2014-01-01
  • Springboot使用influxDB時(shí)序數(shù)據(jù)庫的實(shí)現(xiàn)

    Springboot使用influxDB時(shí)序數(shù)據(jù)庫的實(shí)現(xiàn)

    項(xiàng)目中需要存放大量設(shè)備日志,且需要對其進(jìn)行簡單的數(shù)據(jù)分析,信息提取工作,所以本文就介紹一下Springboot使用influxDB時(shí)序數(shù)據(jù)庫,感興趣的可以了解一下
    2021-08-08
  • 解決Java?API不能遠(yuǎn)程訪問HBase的問題

    解決Java?API不能遠(yuǎn)程訪問HBase的問題

    這篇文章主要介紹了解決Java?API不能遠(yuǎn)程訪問HBase的問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • 解決springboot接入springfox-swagger2遇到的一些問題

    解決springboot接入springfox-swagger2遇到的一些問題

    這篇文章主要介紹了解決springboot接入springfox-swagger2遇到的一些問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • 透過Spring源碼查看Bean的命名轉(zhuǎn)換規(guī)則圖文詳解

    透過Spring源碼查看Bean的命名轉(zhuǎn)換規(guī)則圖文詳解

    Java Bean是一種 Java 編程語言編寫的可重用軟件組件,包括符合一定規(guī)范的Java 類、屬性和方法,用于描述和處理應(yīng)用程序中的數(shù)據(jù)對象,下面這篇文章主要給大家介紹了關(guān)于透過Spring源碼查看Bean的命名轉(zhuǎn)換規(guī)則的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • 一篇文章帶你了解Java Stream流

    一篇文章帶你了解Java Stream流

    Stream流是數(shù)據(jù)渠道,用于操作數(shù)據(jù)源(集合、數(shù)組等)所生成的元素序列。這篇文章主要介紹了Java8新特性Stream流的相關(guān)資料,需要的朋友參考下吧
    2021-08-08
  • SpringBoot2.0實(shí)現(xiàn)多圖片上傳加回顯

    SpringBoot2.0實(shí)現(xiàn)多圖片上傳加回顯

    這兩天公司有需求讓做一個(gè)商戶注冊的后臺功能,其中需要商戶上傳多張圖片并回顯,本文就使用SpringBoot2.0實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2021-07-07

最新評論

汶上县| 安阳县| 宜兰县| 蓬溪县| 芮城县| 泰兴市| 织金县| 普洱| 原阳县| 邹城市| 海宁市| 宜丰县| 屏山县| 封丘县| 葫芦岛市| 喜德县| 昭觉县| 太湖县| 南澳县| 互助| 余干县| 灵丘县| 铜山县| 广西| 沾化县| 安新县| 淮北市| 麟游县| 吐鲁番市| 鄂伦春自治旗| 长宁县| 嘉禾县| 台北县| 安泽县| 宜黄县| 平果县| 聂荣县| 手游| 东山县| 汉阴县| 新巴尔虎右旗|