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

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java學(xué)習(xí) Java讀取csv文件的方法

Java讀取csv文件的方法

更新時(shí)間:2022-08-24 10:51:07 來源:動(dòng)力節(jié)點(diǎn) 瀏覽2240次

在 Java 中讀取 CSV 文件有以下四種方式:

1. Java Scanner 類

Java 的 Scanner 類提供了多種讀取 CSV 文件的方法。它提供了一個(gè)構(gòu)造函數(shù),該構(gòu)造函數(shù)生成從指定 CSV 文件掃描的值。此類還以令牌的形式破壞數(shù)據(jù)。

有一個(gè)分隔符模式,默認(rèn)情況下,它匹配空白。然后,使用不同類型的 next() 方法,我們可以轉(zhuǎn)換生成的標(biāo)記。

使用 Scanner 類讀取 CSV 文件的代碼:

導(dǎo)入java。伊奧。* ; <字體>< /字體>
導(dǎo)入java。實(shí)用程序。掃描儀;<字體>< /字體>
公共類CSVReaderDemo {<字體>< /font >
  public static void main ( String [] args )拋出異常{< font >< /font > 
    掃描儀 sc =新掃描儀(新文件(“C:\\Users\\Dell\\Desktop\\csvDemo.csv” ));<字體>< /字體>  
    //解析一個(gè)CSV文件到Scanner類的構(gòu)造函數(shù)中 <font></font>
    sc。使用分隔符(“,” );<字體>< /字體>
    //設(shè)置逗號(hào)作為分隔符模式<font></font>
    while ( sc.hasNext ( )) {<字體>< /font >  
      系統(tǒng)。出來。打?。╯c.next ());<字體>< /字體>
    }<字體>< /font >
    sc。關(guān)閉();<字體>< /字體>
    //關(guān)閉掃描儀 <font></font>
  }<字體>< /font >
}

輸出:

Raju, Dixit 先生, 3603286012, Burdwan
, Joseph, Patil
先生, 4645968519, Hoogly, Andrew, Mukherjee 先生, 9067215139, Burmingham
, Varun, Patel 先生, 2503595381, Sindh
, Michael, Baldwin 先生, 7631068844, Kentucky
Emmanuel, Agarwal 先生, 3538037535, Nice
, Sumeet, Patil 先生, 6871075256, Aukland
, Pranab, Kulkarni 先生, 7982264359, Hubli
, Rajeev, Singh 先生, 3258837884, Patiala
, Sujay, Kapoor 先生, 5127263160, Mumbai

2. Java String.split() 方法

Java 的 String.split() 標(biāo)識(shí)分隔符并將行拆分為標(biāo)記。

這個(gè)方法的語法是:

公共字符串[]拆分(字符串正則表達(dá)式) 

使用 String.split() 方法讀取 CSV 文件的代碼:

導(dǎo)入java。伊奧。* ; <字體>< /字體>
公共類CSVReader {<字體>< /font >
  public static final String delimiter = "," ; <字體>< /字體>
  public static void read ( String csvFile ) {< font >< /font >  
    試試{<字體>< /font > 
      文件文件=新文件(csvFile );<字體>< /字體> 
      FileReader fr = new FileReader (文件);<字體>< /字體> 
      BufferedReader br = new BufferedReader ( fr ) ; <字體>< /字體> 
      字符串行 = " " ; <字體>< /字體>
      字符串[] tempArr; <字體>< /字體>
      while (( line = br.readLine ()) != null ) {< font >< /font >  
        tempArr = 線。拆分(分隔符);<字體>< /字體>
        for ( String tempStr: tempArr ) {<字體>< /font >  
          系統(tǒng)。出來。打印(tempStr + “” );<字體>< /字體>
        }<字體>< /font >
        系統(tǒng)。出來。打印();<字體>< /字體>
      }<字體>< /font >
      br。關(guān)閉();<字體>< /字體>
    }<字體>< /font >
    catch ( IOException ioe ) {<字體>< /font > 
      愛荷華州。打印堆棧跟蹤();<字體>< /字體>
    }<字體>< /font >
  }<字體>< /font >
  public static void main ( String [] args ) {< font >< /font >  
    //要讀取的csv文件<font></font>
    字符串 csvFile = "C:\\Users\\Dell\\Desktop\\csvDemo.csv" ; <字體>< /字體>
    CSV 閱讀器。讀取(csvFile );<字體>< /字體>
  }<字體>< /font >
}

輸出:

Raju, Dixit 先生, 3603286012, Burdwan
, Joseph, Patil
先生, 4645968519, Hoogly, Andrew, Mukherjee 先生, 9067215139, Burmingham
, Varun, Patel 先生, 2503595381, Sindh
, Michael, Baldwin 先生, 7631068844, Kentucky
Emmanuel, Agarwal 先生, 3538037535, Nice
, Sumeet, Patil 先生, 6871075256, Aukland
, Pranab, Kulkarni 先生, 7982264359, Hubli
, Rajeev, Singh 先生, 3258837884, Patiala
, Sujay, Kapoor 先生, 5127263160, Mumbai

3.在Java中使用BufferedReader類

導(dǎo)入java。伊奧。緩沖讀取器;<字體>< /字體>
導(dǎo)入java。伊奧。文件閱讀器;<字體>< /字體>
導(dǎo)入java。伊奧。異常;<字體>< /字體>
公共類CSV {<字體>< /font >
  public static void main ( String [] args ) {< font >< /font >  
    字符串行 = "" ; <字體>< /字體>
    字符串 splitBy = "," ; <字體>< /字體>
    試試{<字體>< /font > 
      //將CSV文件解析成BufferedReader類構(gòu)造函數(shù)<font></font>
      BufferedReader br = new BufferedReader ( new FileReader ( "C:\\Users\\Dell\\Desktop\\csvDemo.csv" )) ; <字體>< /字體>  
      while (( line = br.readLine ()) != null )< font >< /font > 
      //返回一個(gè)布爾值 <font></font>
      {<字體>< /font >
        字符串[]員工 = 行。拆分(拆分);<字體>< /字體>
        //使用逗號(hào)作為分隔符 <font></font>
        系統(tǒng)。出來。println ( "Emp[First Name=" +employee [ 1 ] + ",LastName=" +employee [ 2 ] + ",Contact=" +employee [ 3 ] + ",City=" +employee [ 4 ] + " ]" ) ; <字體>< /字體>
      }<字體>< /font >
    }<字體>< /font >
    catch ( IOException e ) {<字體>< /font > 
      e. 打印堆棧跟蹤();<字體>< /字體>
    }<字體>< /font >
  }<字體>< /font >
}

輸出:

Emp[First Name= Raju, Last Name= Dixit, Contact= 3603286012, City= Burdwan]
Emp[First Name=Joseph, Last Name=Patil, Contact= 4645968519, City= Hoogly]
Emp[First Name=Andrew, Last Name= Mukherjee,聯(lián)系人= 9067215139,城市= Burmingham]
Emp[名字=Varun,姓氏=Patel,聯(lián)系人= 2503595381,城市= Sindh]
Emp[名字=Michael,姓氏=Baldwin,聯(lián)系人= 7631068844,城市= Kentucky]
Emp[First Name=Emmanuel, Last Name=Agarwal, Contact= 3538037535, City= Nice]
Emp[First Name=Sumeet, Last Name=Patil, Contact= 6871075256, City= Aukland]
Emp[First Name=Pranab, Last Name= Kulkarni,聯(lián)系人 = 7982264359,城市 = Hubli]
Emp[名字 = Rajeev,姓氏 = Singh,聯(lián)系人 = 3258837884,城市 = Patiala]
Emp[名字=Sujay,姓氏=Kapoor,聯(lián)系人= 5127263160,城市= Mumbai]

4. 在 Java 中使用 OpenCSV API

OpenCSV API 是第三方 API。此 API 提供標(biāo)準(zhǔn)庫來讀取各種版本的 CSV 文件。OpenCSV API 還提供了更好的控制來處理 CSV 文件。該庫還可以讀取制表符分隔文件或 TDF 文件格式。

使用 OpenCSV API 讀取 CSV 文件的代碼:

導(dǎo)入java。伊奧。文件閱讀器;<字體>< /字體>
進(jìn)口com。打開.csv CSVReader ; <字體>< /字體>
公共類CSVReaderDemo {<字體>< /font >
  public static void main ( String [] args ) {< font >< /font >  
    CSVReader 閱讀器 = null ; <字體>< /字體>
    試試{<字體>< /font > 
      //將CSV文件解析成CSVReader類構(gòu)造函數(shù)<font></font>
      reader = new CSVReader ( new FileReader ( "C:\\Users\Dell\Desktop\csvDemo.csv" )) ; <字體>< /字體>  
      字符串[]下一行;<字體>< /字體>
      //一次讀取一行 <font></font>
      while (( nextLine = reader.readNext ()) != null ) {< font >< /font >  
        for ( String token: nextLine ) {<字體>< /font >  
          系統(tǒng)。出來。打?。钆疲?lt;字體>< /字體>
        }<字體>< /font >
        系統(tǒng)。出來。打?。ā癨n” );<字體>< /字體>
      }<字體>< /font >
    }<字體>< /font >
    捕獲(異常 e ){<字體>< /font > 
      e. 打印堆棧跟蹤();<字體>< /字體>
    }<字體>< /font >
  }<字體>< /font >
}

輸出:

Mr. Raju Dixit 36??03286012 Burdwan
Mr. Joseph Patil 4645968519 Hoogly
Mr. Andrew Mukherjee 9067215139 Burmingham
Mr. Varun Patel 2503595381 Sindh
Mr. Michael Baldwin 7631068844 Kentucky
Mr. Emmanuel Agarwal 3538037535 Nice
Mr. Sumeet Patil 6871075256 Aukland
Mr. Pranab Kulkarni 7982264359 Hubli
Mr. Rajeev Singh 3258837884 Patiala
Sujay Kapoor 先生 5127263160 孟買

 

提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 国产高清在线免费视频 | 日本欧美小视频 | 毛片在线免费 | 一级毛片特级毛片免费的 | 香港经典a毛片免费观看爽爽影院 | a级在线| 欧美大胆一级视频 | 日本三级免费看 | 国产综合在线视频 | 国产毛片在线看 | 欧美一级www| 成人国产精品久久久免费 | 国产色婷婷精品综合在线手机播放 | 中国特级黄一级真人毛片 | 久久久免费观看 | fc2在线亚洲一区 | 国产一级在线 | 一个人看的www片免费视频中文 | 成人影院在线播放 | 日本青草视频 | ririai99在线视频观看 | 日本精品免费 | 日韩视频在线免费 | 久久青草免费免费91线频观看 | 国产精品国产精品国产三级普 | 99视频免费播放 | 日韩高清一区二区三区不卡 | 成人久久18免费软件 | 国产一级淫片视频免费看 | 久久精品国产91久久麻豆自制 | 黄色三级视频网站 | 成年人视频在线播放 | 色爱区综合激情五月综合激情 | 日韩欧美高清在线观看 | 波多野结衣中文字幕在线 | 日韩经典中文字幕 | 久久久久国产精品免费免费 | 天天色综合社区 | 欧美les视频xxxx在线观看 | 成人午夜大片 | 亚洲国产精品一区二区久 |