Rumah  >  Artikel  >  Java  >  Contoh penggunaan OpenCSV untuk membaca dan menulis fail CSV dalam Java

Contoh penggunaan OpenCSV untuk membaca dan menulis fail CSV dalam Java

王林
王林asal
2023-12-20 09:57:05709semak imbas

使用 OpenCSV 在 Java 中进行 CSV 文件的读写操作示例

Contoh membaca dan menulis fail CSV dalam Java menggunakan OpenCSV

Pengenalan:
CSV (Nilai Dipisahkan Koma) ialah format fail teks biasa, biasanya digunakan untuk menyimpan data jadual. Di Java, OpenCSV ialah perpustakaan sumber terbuka yang popular yang boleh digunakan untuk mengendalikan pembacaan dan penulisan fail CSV. Artikel ini akan memperkenalkan cara menggunakan OpenCSV untuk membaca dan menulis fail CSV, termasuk membaca dan menghuraikan fail CSV serta mencipta dan menulis fail CSV.

1. Membaca dan menghuraikan fail CSV
Pertama, kita perlu menambah kebergantungan pada pustaka OpenCSV. Anda boleh menambah kebergantungan OpenCSV dengan menambahkan kod berikut dalam pom. Laluan ke fail CSV dihantar kepada pembina.

<dependency>
    <groupId>com.opencsv</groupId>
    <artifactId>opencsv</artifactId>
    <version>5.3</version>
</dependency>

    Panggil kaedah readNext() objek CSVReader untuk membaca baris data seterusnya daripada fail CSV dan menyimpannya dalam tatasusunan rentetan.
  1. CSVReader reader = new CSVReader(new FileReader("path/to/csvfile.csv"));

  2. Untuk setiap baris data, nilai setiap medan boleh diakses menggunakan indeks tatasusunan rentetan.
  3. String[] nextLine;
    while ((nextLine = reader.readNext()) != null) {
     // 处理CSV文件的每一行数据
    }

    readNext()方法来读取CSV文件的下一行数据,并将其存储在一个字符串数组中。

    String field1 = nextLine[0]; // 第一个字段的值
    String field2 = nextLine[1]; // 第二个字段的值
    // ...
  4. 对于每一行数据,可以使用字符串数组的索引来访问每个字段的值。

    CSVWriter writer = new CSVWriter(new FileWriter("path/to/csvfile.csv", true));

使用上述代码,我们可以轻松地读取和解析CSV文件中的数据。

二、CSV文件的创建和写入
与读取CSV文件不同,我们需要使用CSVWriter类来创建和写入CSV文件。以下是创建和写入CSV文件的示例代码:

  1. 创建一个CSVWriter对象,并将CSV文件的路径和写入模式(例如true表示追加模式,false表示覆盖模式)传递给构造函数。

    String[] data1 = {"John", "Doe", "johndoe@example.com"};
    String[] data2 = {"Jane", "Smith", "janesmith@example.com"};
    // ...
    
    writer.writeNext(data1);
    writer.writeNext(data2);
    // ...
  2. 使用CSVWriter对象的writeNext()方法将数据写入CSV文件。该方法接受一个字符串数组作为参数,该数组包含要写入的每个字段的值。

    writer.close();
  3. 写入完成后,需要调用CSVWriter对象的close()

    Menggunakan kod di atas, kita boleh membaca dan menghuraikan data dalam fail CSV dengan mudah.
2. Penciptaan dan penulisan fail CSV

Berbeza dengan membaca fail CSV, kita perlu menggunakan kelas CSVWriter untuk mencipta dan menulis fail CSV. Berikut ialah contoh kod untuk membuat dan menulis fail CSV:


Buat objek CSVWriter dan tambah laluan ke fail CSV dan mod penulisan (cth. true untuk mod tambah, false menunjukkan mod override) diserahkan kepada pembina. <p>rrreee</p>🎜🎜Gunakan kaedah <code>writeNext() objek CSVWriter untuk menulis data pada fail CSV. Kaedah ini menerima sebagai hujah tatasusunan rentetan yang mengandungi nilai setiap medan yang akan ditulis. 🎜rrreee🎜🎜🎜Selepas penulisan selesai, anda perlu memanggil kaedah close() objek CSVWriter untuk menutup strim dan menyimpan fail. 🎜rrreee🎜🎜🎜Menggunakan kod di atas, kami boleh mencipta fail CSV baharu dan menulis data ke dalamnya. 🎜🎜Kesimpulan: 🎜Dengan pustaka OpenCSV, kami boleh melaksanakan operasi membaca dan menulis pada fail CSV dengan mudah, termasuk membaca dan menghuraikan fail CSV serta mencipta dan menulis fail CSV. Dengan menggunakan API yang disediakan oleh perpustakaan OpenCSV, kami boleh memproses fail CSV dengan mudah, menjadikan pengendalian fail CSV kami di Java lebih mudah dan cekap. 🎜🎜Nota: Apabila menggunakan perpustakaan OpenCSV, pastikan anda membiasakan diri dengan dokumentasi OpenCSV dan rujukan API. Versi OpenCSV yang berbeza mungkin mempunyai sedikit perbezaan, jadi pastikan anda menggunakan versi yang sesuai untuk projek anda dan gunakan pustaka OpenCSV dengan betul mengikut dokumentasi rasmi. 🎜

Atas ialah kandungan terperinci Contoh penggunaan OpenCSV untuk membaca dan menulis fail CSV dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn