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

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

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

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)常遇到需要將一個文檔中的文本按行輸出,這是我們可以使用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();
        }
    }

五、從標準輸入中讀入

  //從標準輸入中讀入
  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é)

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

相關(guān)文章

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

    Java動態(tài)腳本Groovy

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

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

    這篇文章主要為大家介紹了Java教程package和import訪問控制的步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    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)方法。要想實現(xiàn)這種需求必須為這些特性的方法定義一個類變量,然后將這些方法的代碼用synchronized塊括起來,并將這個類變量作為參數(shù)傳入synchronized塊
    2014-01-01
  • Springboot使用influxDB時序數(shù)據(jù)庫的實現(xiàn)

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

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

    解決Java?API不能遠程訪問HBase的問題

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

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

    這篇文章主要介紹了解決springboot接入springfox-swagger2遇到的一些問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    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實現(xiàn)多圖片上傳加回顯

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

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

最新評論

沧州市| 屏东市| 武强县| 正蓝旗| 冕宁县| 铁力市| 甘肃省| 大丰市| 萨迦县| 涿鹿县| 黔江区| 阿瓦提县| 台北市| 扶风县| 黄浦区| 绵阳市| 富蕴县| 桓台县| 册亨县| 安西县| 合江县| 伊春市| 南平市| 伊吾县| 宣城市| 临武县| 延长县| 卓尼县| 天水市| 湖北省| 达日县| 合阳县| 罗定市| 高尔夫| 玛纳斯县| 栾城县| 贡山| 秭归县| 彭山县| 南城县| 尚志市|