欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java實(shí)現(xiàn)讀取csv文件的兩種方式

 更新時(shí)間:2023年12月26日 11:05:13   作者:iverson_AL  
這篇文章主要為大家詳細(xì)介紹了如何利用Java讀取csv文件的兩種方式,文中的示例代碼講解詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,感興趣的小伙伴可以了解一下

java讀取csv文件的兩種方式

1.CsvReader讀取

import com.csvreader.CsvReader;
/**
     * CsvReader 讀取
     * @param filePath
     * @return
     */
    public static ArrayList<String> readCsvByCsvReader(String filePath) {
        ArrayList<String> strList = null;
        try {
            ArrayList<String[]> arrList = new ArrayList<String[]>();
            strList = new ArrayList<String>();
            CsvReader reader = new CsvReader(filePath, ',', Charset.forName("UTF-8"));
            while (reader.readRecord()) {
//                System.out.println(Arrays.asList(reader.getValues()));
                arrList.add(reader.getValues()); // 按行讀取,并把每一行的數(shù)據(jù)添加到list集合
            }
            reader.close();
            System.out.println("讀取的行數(shù):" + arrList.size());
            // 如果要返回 String[] 類(lèi)型的 list 集合,則直接返回 arrList
            // 以下步驟是把 String[] 類(lèi)型的 list 集合轉(zhuǎn)化為 String 類(lèi)型的 list 集合
            for (int row = 0; row < arrList.size(); row++) {
                // 組裝String字符串
                // 如果不知道有多少列,則可再加一個(gè)循環(huán)
                String ele = arrList.get(row)[0] + "," + arrList.get(row)[1] + ","
                        + arrList.get(row)[2] + "," + arrList.get(row)[3] ;
				System.out.println(ele);
                strList.add(ele);

            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return strList;
    }

CsvReader方式需要引入jar包,pom配置如下

<!--csv文件操作-->
        <dependency>
            <groupId>net.sourceforge.javacsv</groupId>
            <artifactId>javacsv</artifactId>
            <version>2.0</version>
        </dependency>

2.BufferedReader讀取

 /**
     * BufferedReader 讀取
     * @param filePath
     * @return
     */
    public static ArrayList<String> readCsvByBufferedReader(String filePath) {
        File csv = new File(filePath);
        csv.setReadable(true);
        csv.setWritable(true);
        InputStreamReader isr = null;
        BufferedReader br = null;
        try {
            isr = new InputStreamReader(new FileInputStream(csv), "UTF-8");
            br = new BufferedReader(isr);
        } catch (Exception e) {
            e.printStackTrace();
        }
        String line = "";
        ArrayList<String> records = new ArrayList<>();
        try {
            while ((line = br.readLine()) != null) {
                System.out.println(line);
                records.add(line);
            }
            System.out.println("csv表格讀取行數(shù):" + records.size());
        } catch (IOException e) {
            e.printStackTrace();
        }
        return records;
    }

到此這篇關(guān)于Java讀取csv文件的兩種方式的文章就介紹到這了,更多相關(guān)Java讀取csv文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java占位符替換五種方式小結(jié)

    java占位符替換五種方式小結(jié)

    我們經(jīng)常會(huì)遇到需要替換字符串中的占位符的情況,本文主要介紹了java占位符替換五種方式小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-06-06
  • Mybatis實(shí)現(xiàn)增刪改查

    Mybatis實(shí)現(xiàn)增刪改查

    這篇文章主要介紹了Mybatis實(shí)現(xiàn)增刪改查,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-01-01
  • SpringBoot項(xiàng)目中使用Sharding-JDBC實(shí)現(xiàn)讀寫(xiě)分離的詳細(xì)步驟

    SpringBoot項(xiàng)目中使用Sharding-JDBC實(shí)現(xiàn)讀寫(xiě)分離的詳細(xì)步驟

    Sharding-JDBC是一個(gè)分布式數(shù)據(jù)庫(kù)中間件,它不僅支持?jǐn)?shù)據(jù)分片,還可以輕松實(shí)現(xiàn)數(shù)據(jù)庫(kù)的讀寫(xiě)分離,本文介紹如何在Spring Boot項(xiàng)目中集成Sharding-JDBC并實(shí)現(xiàn)讀寫(xiě)分離的詳細(xì)步驟,需要的朋友可以參考下
    2024-08-08
  • Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之藥店信息管理系統(tǒng)的實(shí)現(xiàn)

    Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之藥店信息管理系統(tǒng)的實(shí)現(xiàn)

    這是一個(gè)使用了java+SSM+JSP+layui+maven+mysql開(kāi)發(fā)的藥店信息管理系統(tǒng),是一個(gè)畢業(yè)設(shè)計(jì)的實(shí)戰(zhàn)練習(xí),具有藥店信息管理該有的所有功能,感興趣的朋友快來(lái)看看吧
    2022-01-01
  • java編程實(shí)現(xiàn)獲取服務(wù)器IP地址及MAC地址的方法

    java編程實(shí)現(xiàn)獲取服務(wù)器IP地址及MAC地址的方法

    這篇文章主要介紹了java編程實(shí)現(xiàn)獲取機(jī)器IP地址及MAC地址的方法,實(shí)例分析了Java分別針對(duì)單網(wǎng)卡及多網(wǎng)卡的情況下獲取服務(wù)器IP地址與MAC地址的相關(guān)技巧,需要的朋友可以參考下
    2015-11-11
  • Java?JDBC高封裝Util類(lèi)的項(xiàng)目實(shí)踐

    Java?JDBC高封裝Util類(lèi)的項(xiàng)目實(shí)踐

    這篇文章主要介紹了Java?JDBC高封裝Util類(lèi)的項(xiàng)目實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • SpringBoot部署與服務(wù)配置方式

    SpringBoot部署與服務(wù)配置方式

    這篇文章主要介紹了SpringBoot部署與服務(wù)配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Spring?Bean后處理器詳細(xì)介紹

    Spring?Bean后處理器詳細(xì)介紹

    Bean后置處理器允許在調(diào)用初始化方法前后對(duì)Bean進(jìn)行額外的處理??梢栽?Spring容器通過(guò)插入一個(gè)或多個(gè)BeanPostProcessor的實(shí)現(xiàn)來(lái)完成實(shí)例化,配置和初始化一個(gè)?bean?之后實(shí)現(xiàn)一些自定義邏輯回調(diào)方法
    2023-01-01
  • 詳解Java中的 枚舉與泛型

    詳解Java中的 枚舉與泛型

    這篇文章主要介紹了 詳解Java中的 枚舉與泛型的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • java isInterrupted()判斷線程的實(shí)例講解

    java isInterrupted()判斷線程的實(shí)例講解

    在本篇內(nèi)容里小編給大家分享的是一篇關(guān)于java isInterrupted()判斷線程的實(shí)例講解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-05-05

最新評(píng)論