如何在 Java 中將資料寫入 .csv 檔案?


名為 OpenCSV 的庫提供 API 用於從 .CSV 檔案讀取和寫入資料。這裡解釋瞭如何使用 Java 程式編寫 .csv 檔案的內容。

Maven 依賴

<dependency>
   <groupId>com.opencsv</groupId>
   <artifactId>opencsv</artifactId>
   <version>4.4</version>
</dependency>
<dependency>
   <groupId>org.apache.commons</groupId>
   <artifactId>commons-lang3</artifactId>
   <version>3.9</version>
</dependency>

com.opencsv 包的 CSVWriter 類表示一個簡單的 csv 寫入器。在例項化此類時,您需要將表示要寫入資料的檔案的 Writer 物件作為引數傳遞給其建構函式。

它提供了名為 **writeAll()** 和 **writeNext()** 的方法來將資料寫入 .csv 檔案。

使用 writeNext() 方法

CSVWriter 類的 writeNext() 方法將下一行寫入 .csv 檔案

示例

以下 Java 程式演示瞭如何使用 writeNext() 方法將資料寫入 .csv 檔案。

import java.io.FileWriter;
import com.opencsv.CSVWriter;
public class WritingToCSV {
   public static void main(String args[]) throws Exception {
      //Instantiating the CSVWriter class
      CSVWriter writer = new CSVWriter(new FileWriter("D://output.csv"));
      //Writing data to a csv file
      String line1[] = {"id", "name", "salary", "start_date", "dept"};
      String line2[] = {"1", "Krishna", "2548", "2012-01-01", "IT"};
      String line3[] = {"2", "Vishnu", "4522", "2013-02-26", "Operations"};
      String line4[] = {"3", "Raja", "3021", "2016-10-10", "HR"};
      String line5[] = {"4", "Raghav", "6988", "2012-01-01", "IT"};
      //Writing data to the csv file
      writer.writeNext(line1);
      writer.writeNext(line2);
      writer.writeNext(line3);
      writer.writeNext(line4);
      //Flushing data from writer to file
      writer.flush();
      System.out.println("Data entered");
   }
}

輸出

Data entered

使用 writeAll() 方法

此方法接受一個包含要寫入內容的 List 物件(字串陣列型別),並將其一次性寫入 .csv 檔案。

示例

以下 Java 程式演示瞭如何使用 writeAll() 方法將內容寫入 .csv 檔案。

import java.io.FileWriter;
import java.util.ArrayList;
import java.util.List;
import com.opencsv.CSVWriter;
public class WritingToCSV {
   public static void main(String args[]) throws Exception {
      //Instantiating the CSVWriter class
      CSVWriter writer = new CSVWriter(new FileWriter("D://output.csv"));
      //Writing data to a csv file
      String line1[] = {"id", "name", "salary", "start_date", "dept"};
      String line2[] = {"1", "Krishna", "2548", "2012-01-01", "IT"};
      String line3[] = {"2", "Vishnu", "4522", "2013-02-26", "Operations"};
      String line4[] = {"3", "Raja", "3021", "2016-10-10", "HR"};
      String line5[] = {"4", "Raghav", "6988", "2012-01-01", "IT"};
      //Instantiating the List Object
      List list = new ArrayList();
      list.add(line1);
      list.add(line2);
      list.add(line3);
      list.add(line4);
      list.add(line5);
      //Writing data to the csv file
      writer.writeAll(list);
      writer.flush();
      System.out.println("Data entered");
   }
}

輸出

Data entered

更新於: 2019年9月11日

16K+ 瀏覽量

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.