1. Produkty
  2.   Arkusz
  3.   GO
  4.   Go-Excel
 
  

Biblioteka Open Source Go do czytania plików XLSX programu Excel

Czytaj dokumenty XLSX przez Open Source Go API.

Go-Excel to lekka, czysta biblioteka Go o otwartym kodzie źródłowym do czytania dokumentów Microsoft Excel. Interfejs API ma na celu zapewnienie prostego i łatwego sposobu odczytywania plików XLSX jako tabeli podobnej do powiązanej bazy danych. Podczas odczytywania pliku XLSX interfejs API oczekuje, że pierwszy wiersz będzie wierszem tytułu, a wiersze — wierszami danych.

Interfejs API zapewnia zestaw znaczników do manipulowania dokumentami Excel. Znacznik kolumny odwzorowuje nazwę pola w rzędzie tytułowym, znacznik domyślny ustawia wartość domyślną, gdy żadna wartość nie jest zdefiniowana, znacznik podziału dzieli ciąg i konwertuje go na wycinek, znacznik zerowy pomija skanowaną wartość w komórce i wymaga tag zwraca błąd, jeśli tytuł kolumny nie istnieje w programie Excel.

Previous Next

Pierwsze kroki z Go-Excel

Zalecanym sposobem instalacji Go-Excel w projekcie jest użycie GitHub. Użyj następującego polecenia, aby uzyskać płynną instalację.

Zainstaluj go-excel przez GitHub

go get github.com/szyhf/go-excel 

Przeczytaj plik Excel przez Free Go API

Biblioteka Go-Excel o otwartym kodzie źródłowym umożliwia programistom komputerowym odczytywanie plików Excel przez GO. Podczas czytania pliku Excel możesz użyć nazwy pola jako domyślnej nazwy kolumny i możesz zmapować kolumnę na więcej niż jedno pole. Po ustawieniu opcji odczytu otwierasz nowe połączenie z plikiem Excela za pomocą metody excel.NewConnector() i udaje się, łącząc się z plikiem Excela możesz odczytać jego zawartość za pomocą metody conn.NewReader().

Prosty czytelnik do odczytu pliku Excel w aplikacji Go

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
}

Zaawansowane metody czytania Excela przez GO API

API Go-Excel o otwartym kodzie źródłowym zapewnia zarówno podstawowe, jak i zaawansowane metody odczytywania plików Excela. Możesz użyć wiersza indeksu jako tytułu, każdy wiersz przed wierszem tytułu zostanie zignorowany, a domyślny wiersz tytułu jest ustawiony na 0. Możesz pominąć puste wiersze i pominąć kolumny większe niż tytuł. Interfejs API umożliwia ustawienie pustych komórek z wartościami domyślnymi i można ustawić wartości domyślne za pomocą unmarshal przez kodowanie.BinaryUnmarshaler

Przeczytaj mapę za darmo Gt API

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++
}
 Polski