Rumah  >  Artikel  >  Java  >  Gunakan OpenCSV Java untuk membaca dan menulis fail CSV

Gunakan OpenCSV Java untuk membaca dan menulis fail CSV

王林
王林asal
2023-12-20 10:08:081578semak imbas

利用 OpenCSV 在 Java 中实现 CSV 文件的读写功能

Gunakan OpenCSV untuk melaksanakan fungsi membaca dan menulis fail CSV dalam Java

CSV (Nilai Dipisahkan Koma) ialah format storan data biasa yang menggunakan koma sebagai pemisah antara medan. Di Java, kami boleh menggunakan perpustakaan kelas OpenCSV untuk melaksanakan operasi membaca dan menulis dengan mudah pada fail CSV.

OpenCSV ialah perpustakaan Java sumber terbuka yang menyediakan set API yang ringkas tetapi berkuasa untuk memproses fail CSV. Berikut akan memperkenalkan cara menggunakan OpenCSV untuk melaksanakan operasi membaca dan menulis fail CSV dalam Java.

Pertama, kita perlu mengimport perpustakaan kelas OpenCSV. Anda boleh memuat turun fail JAR terbaharu daripada tapak web OpenCSV rasmi dan menambahkannya pada kebergantungan projek anda.

Membaca fail CSV:
Untuk membaca fail CSV, pertama sekali kita perlu mencipta objek CSVReader dan menghantar fail CSV sebagai parameter kepada pembinanya.

import com.opencsv.CSVReader;
import java.io.FileReader;
import java.io.IOException;

public class CSVReaderExample {
    public static void main(String[] args) {
        try {
            CSVReader reader = new CSVReader(new FileReader("data.csv"));
            String[] line;
            while ((line = reader.readNext()) != null) {
                // 处理每一行数据
                for (String field : line) {
                    System.out.print(field + ", ");
                }
                System.out.println();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Dalam kod di atas, kami mencipta objek CSVReader dan menggunakan FileReader sebagai parameter untuk membaca fail CSV bernama "data.csv". Kami kemudian membaca data daripada fail baris demi baris menggunakan kaedah readNext() dan menyimpannya dalam tatasusunan rentetan. Apabila setiap baris data diproses, kami menggunakan gelung untuk mencetak nilai setiap medan.

Menulis pada fail CSV:
Untuk menulis data pada fail CSV, pertama sekali kita perlu mencipta objek CSVWriter dan lulus nama fail dan pembatas fail CSV sebagai parameter kepada pembinanya.

import com.opencsv.CSVWriter;
import java.io.FileWriter;
import java.io.IOException;

public class CSVWriterExample {
    public static void main(String[] args) {
        try {
            CSVWriter writer = new CSVWriter(new FileWriter("output.csv"), ',', CSVWriter.NO_QUOTE_CHARACTER);
            String[] header = {"Name", "Age", "Email"};
            writer.writeNext(header);
            String[] row1 = {"John Doe", "30", "john.doe@example.com"};
            String[] row2 = {"Jane Smith", "25", "jane.smith@example.com"};
            writer.writeNext(row1);
            writer.writeNext(row2);
            writer.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Dalam kod di atas, kami mencipta objek CSVWriter dan menggunakan FileWriter sebagai parameter untuk mencipta fail CSV bernama "output.csv". Kami kemudian menulis setiap baris data ke fail menggunakan kaedah writeNext(). Dalam contoh ini, kita mula-mula menulis nama medan sebagai baris pertama fail, dan kemudian menulis dua baris data pada fail.

Perlu diambil perhatian bahawa kami menggunakan koma sebagai pembatas semasa mencipta objek CSVWriter dan menggunakan pemalar CSVWriter.NO_QUOTE_CHARACTER untuk menyatakan bahawa kandungan medan tidak boleh dikelilingi oleh petikan.

Dengan menggunakan perpustakaan kelas OpenCSV, kami boleh melaksanakan fungsi membaca dan menulis fail CSV dengan mudah dan mudah dalam Java. Sama ada operasi baca atau tulis, ia boleh dicapai dengan beberapa baris kod. Ini menjadikan import dan eksport data lebih cekap dan mudah. Saya harap artikel ini dapat membantu anda memahami dan menggunakan pustaka kelas OpenCSV dengan lebih baik.

Atas ialah kandungan terperinci Gunakan OpenCSV Java untuk membaca dan menulis fail CSV. 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