1. Produk
  2.   Hamparan
  3.   GO
  4.   Go-Excel
 
  

Pustaka Go Sumber Terbuka untuk Membaca Fail Excel XLSX

Baca dokumen XLSX melalui Open Source Go API.

Go-Excel ialah perpustakaan go tulen ringan sumber terbuka untuk membaca dokumen Microsoft Excel. API bertujuan untuk menyediakan cara yang ringkas dan mudah untuk membaca fail XLSX sebagai jadual seperti relate-db. Semasa membaca fail XLSX, API menjangkakan baris pertama sebagai baris tajuk dan baris sebagai baris data.

API menyediakan satu set tag untuk memanipulasi dokumen Excel. Teg lajur dipetakan ke nama medan dalam baris tajuk, teg lalai menetapkan nilai lalai apabila tiada nilai ditentukan, teg split membelah rentetan dan menukarnya kepada kepingan, tag nil melangkau nilai imbasan dalam sel dan req tag mengembalikan ralat jika tajuk lajur tidak wujud dalam Excel.

Previous Next

Bermula dengan Go-Excel

Cara yang disyorkan untuk memasang Go-Excel ke dalam projek anda adalah dengan menggunakan GitHub. Sila gunakan arahan berikut untuk pemasangan yang lancar.

Pasang go-excel melalui GitHub

go get github.com/szyhf/go-excel 

Baca Fail Excel melalui Free Go API

Pustaka sumber terbuka Go-Excel membenarkan pengaturcara komputer membaca fail Excel melalui GO. Semasa membaca fail excel, anda boleh menggunakan nama medan sebagai nama lajur lalai dan anda boleh memetakan lajur ke lebih daripada satu medan. Selepas menetapkan pilihan bacaan anda membuka sambungan baharu dengan fail Excel menggunakan kaedah excel.NewConnector() dan berjaya, menyambung ke fail excel anda boleh membaca kandungannya menggunakan kaedah conn.NewReader().

Pembaca Mudah untuk Membaca Fail Excel dalam Go Apps

type Reader interface {
	// Get all titles sorted
	GetTitles() []string
	// Read current row into a object
	Read(v interface{}) error
	// Read all rows
	// container: container should be ptr to slice or array.
	ReadAll(container interface{}) error
	// Read next rows
	Next() bool
	// Close the reader
	Close() error
}

Kaedah lanjutan untuk Membaca Excel melalui API GO

API sumber terbuka Go-Excel menyediakan kaedah asas serta lanjutan untuk membaca fail excel. Anda boleh menggunakan baris indeks sebagai tajuk, setiap baris sebelum baris tajuk akan diabaikan dan baris tajuk lalai ditetapkan kepada 0. Anda boleh melangkau baris kosong dan melangkau lajur yang lebih besar daripada tajuk. API membenarkan menetapkan sel kosong dengan nilai lalai dan anda boleh menetapkan nilai lalai dengan menggunakan unmarshal melalui pengekodan.BinaryUnmarshaler

Baca Peta melalui API GO Percuma

conn := excel.NewConnecter()
err := conn.Open(filePath)
if err != nil {
	fmt.Println(err)
	return
}
defer conn.Close()
// Generate an new reader of a sheet
// sheetNamer: if sheetNamer is string, will use sheet as sheet name.
//             if sheetNamer is int, will i'th sheet in the workbook, be careful the hidden sheet is counted. i ∈ [1,+inf]
//             if sheetNamer is a object implements `GetXLSXSheetName()string`, the return value will be used.
//             otherwise, will use sheetNamer as struct and reflect for it's name.
// 			   if sheetNamer is a slice, the type of element will be used to infer like before.
rd, err := conn.NewReader(stdSheetName)
if err != nil {
	fmt.Println(err)
	return
}
defer rd.Close()
idx := 0
for rd.Next() {
	var m map[string]string
	if err := rd.Read(&m); err != nil {
		fmt.Println(err)
		return
	}
	expectStdMap := expectStandardMapList[idx]
	if !reflect.DeepEqual(m, expectStdMap) {
		fmt.Printf("unexpect std at %d = \n%s", idx, convert.MustJsonPrettyString(expectStdMap))
	}
	fmt.Printf("%d => %s\n", idx, convert.MustJsonString(m))
	idx++
}
 Melayu