Saya ingin membaca dan menulis file Excel dari Jawa dengan 3 kolom dan baris N, mencetak satu string di setiap sel. Adakah yang bisa memberi saya potongan kode sederhana untuk ini? Apakah saya perlu menggunakan lib eksternal atau apakah Java memiliki dukungan bawaan untuknya?
Saya ingin melakukan hal berikut:
for(i=0; i <rows; i++)
//read [i,col1] ,[i,col2], [i,col3]
for(i=0; i<rows; i++)
//write [i,col1], [i,col2], [i,col3]
ExcelCell.getValue()
masing-masing. Misalnya, lihat contoh bacaan ini , juga untuk tulisan Anda dapat memeriksa contoh ini .Jawaban:
Coba Apache POI HSSF . Berikut ini contoh cara membaca file excel:
Pada halaman dokumentasi Anda juga memiliki contoh cara menulis untuk unggul file.
sumber
HSSFSheet
'sgetPhysicalNumberOfRows()
metode tampaknya mengembalikan jumlah baris non-kosong (itu tidak jelas bagi saya bahwa yang dimaksud 'fisik'). Jadi, jika file excel Anda memiliki banyak baris kosong (yaitu untuk alasan pemformatan), Anda mungkin lebih beruntung menggunakanrows = sheet.getLastRowNum();
. Ini juga harus berarti Anda dapat menghapus trik (lihat komentar) dari loop pertama:for(int i = 0; i <= rows; i++) {
(perhatikan perubahan dari<
menjadi<=
).Apache POI dapat melakukan ini untuk Anda. Khususnya modul HSSF . The panduan ringkas yang paling berguna. Inilah cara melakukan apa yang Anda inginkan - secara khusus buat lembar dan tuliskan.
sumber
Pertama tambahkan semua file jar ini di jalur kelas proyek Anda:
Kode untuk menulis dalam file excel:
Kode untuk membaca dari file excel
sumber
Anda juga dapat mempertimbangkan JExcelApi . Saya merasa lebih baik dirancang daripada POI. Ada tutorial di sini .
sumber
Ada alat baru yang mudah dan sangat keren (10x untuk Kfir): xcelite
Menulis:
Baca:
sumber
Untuk membaca file xlsx kita bisa menggunakan Apache POI libs Coba ini:
sumber
.csv atau POI pasti akan melakukannya, tetapi Anda harus mengetahui JExcel Andy Khan . Saya pikir sejauh ini perpustakaan Java terbaik untuk bekerja dengan Excel ada.
sumber
dan pastikan untuk menambahkan toples guci dan poi-ooxml (org.apache.poi) ke proyek Anda
sumber
File CSV sederhana harus cukup
sumber
Untuk membaca data dari .xlsx workbook kita perlu menggunakan kelas XSSFworkbook.
XSSFWorkbook xlsxBook = new XSSFWorkbook(fis);
XSSFSheet sheet = xlsxBook.getSheetAt(0);
dll.Kita perlu menggunakan Apache-poi 3.9 @ http://poi.apache.org/
Untuk info terperinci dengan contoh, kunjungi: http://java-recent.blogspot.in
sumber
Tentu, Anda akan menemukan kode di bawah ini berguna dan mudah dibaca dan ditulis. Ini adalah
util
kelas yang dapat Anda gunakan dalam metode utama Anda dan kemudian Anda baik untuk menggunakan semua metode di bawah ini.sumber
menggunakan spring apache poi repo
sumber
Saya mengedit yang paling banyak dipilih karena cuz tidak menghitung kolom kosong atau baris tidak sepenuhnya, jadi di sini adalah kode saya saya mengujinya dan sekarang bisa mendapatkan sel di bagian mana pun dari file excel. juga sekarang Anda dapat memiliki kolom kosong antara kolom yang diisi dan akan membacanya
sumber
Jika nomor kolom digunakan, Anda dapat menggunakan ini
Kemandirian terkait dapat ditemukan di sini
sumber
Anda memerlukan pustaka POI Apache dan kode di bawah ini akan membantu Anda
sumber
Cara lain untuk membaca / menulis file Excel adalah dengan menggunakan Windmill . Ini menyediakan API yang lancar untuk memproses file Excel dan CSV.
Impor data
Ekspor data
sumber
Anda tidak dapat membaca & menulis file yang sama secara paralel ( kunci baca-tulis ). Tapi, kita bisa melakukan operasi paralel pada data sementara (yaitu input / output stream). Tulis data ke file hanya setelah menutup aliran input. Langkah-langkah di bawah ini harus diikuti.
Apache POI - baca / tulis contoh excel yang sama
sumber
Silakan gunakan Apache POI libs dan coba ini.
sumber
Saat menggunakan apache poi 4.1.2. Celltype berubah sedikit. Di bawah ini adalah contohnya
sumber
Jika Anda perlu melakukan lebih dari itu dengan dokumen kantor di Jawa, pilih POI seperti yang disebutkan.
Untuk membaca / menulis dokumen excel sederhana seperti yang Anda minta, Anda dapat menggunakan format CSV (juga seperti yang disebutkan):
sumber
Ini akan menulis JTable ke file yang dipisahkan tab yang dapat dengan mudah diimpor ke Excel. Ini bekerja.
Jika Anda menyimpan lembar kerja Excel sebagai dokumen XML, Anda juga bisa membuat file XML untuk EXCEL dengan kode. Saya telah melakukan ini dengan kata sehingga Anda tidak perlu menggunakan paket pihak ketiga.
Kode ini dapat membuat JTable dikeluarkan dan kemudian cukup menulis tab yang dipisahkan dengan file teks apa pun lalu mengimpor ke Excel. Saya harap ini membantu.
Kode:
sumber