Bevezetés

Aspose.Cells FOSS for Go egy tiszta Go könyvtár az Excel táblázatok kezeléséhez. Egy API-t biztosít új munkafüzetek nulláról történő létrehozásához, cellaértékek írásához és formázásához, adatellenőrzési szabályok alkalmazásához, strukturált táblák építéséhez, képek beágyazásához, valamint nagy .xlsx fájlok soronkénti olvasásához — mindezt natív C vagy C++ függőség nélkül.

A könyvtár Go modulként érhető el a github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go címen, és az MIT licenc alatt kerül kiadásra. Telepítheted a go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26 paranccsal bármely Go 1.24+ projektbe.

Ez a bejegyzés a fő képességeket tárgyalja: cellaformázás, adatvalidáció, táblák, képek és streaming olvasás.


Főbb jellemzők

Cellaformázás

Csoportosítsd a Font, Fill, Alignment és Border beállításokat egy újrahasználható Style-ba, majd alkalmazd egy cellára a Cell.SetStyle segítségével:

wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]

boldStyle := cells_foss.NewStyle()
boldStyle.Font.Bold = true
boldStyle.Font.Size = 12

cell, _ := ws.Cells().Get("A1")
cell.SetStyle(boldStyle)

Alignment kezeli a Horizontal, Vertical és WrapText beállításokat; a Border a Top, Bottom, Left és Right szabály láthatóságát valamint a Color-t szabályozza.

Adatérvényesítés

Worksheet.AddDataValidation egy validációs szabályt csatol egy cellatartományhoz. A DataValidation struktúra tartalmazza a szabály Type típusát, egy vagy két Formula értéket, valamint a hibaüzenet mezőket:

wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]

dv := &cells_foss.DataValidation{
	Type:             cells_foss.DataValidationTypeList,
	Formula1:         `"Apple,Banana,Cherry,Dragonfruit"`,
	AllowBlank:       true,
	ShowErrorMessage: true,
	ErrorTitle:       "Invalid Fruit",
	ErrorMessage:     "Please pick a fruit from the list.",
	ErrorStyle:       cells_foss.ErrorStyleStop,
}
ws.AddDataValidation("A2:A10", dv)

Táblázatok

Worksheet.AddTable egy strukturált Table-t hoz létre egy tartomány felett, opcionális fejlécsorral és egy elnevezett táblastílussal:

wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("A1", "Item")
ws.Cells().Set("B1", "Qty")

tbl := ws.AddTable("A1:B2")
tbl.HasHeaderRow = true
tbl.StyleName = "TableStyleMedium6"

Képek

Worksheet.AddPicture beágyaz egy képet; a Picture.SetAnchor(row, col) pozícionálja azt:

wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
imageBytes := []byte{} // populate with real image bytes before use

pic := &cells_foss.Picture{Data: imageBytes, Format: "png"}
ws.AddPicture(pic)
pic.SetAnchor(5, 0)

Nagy fájlok streamelése

StreamingReader egy munkalapot soronként olvas be egy visszahíváson keresztül, így egy több ezer soros munkafüzetnek soha nem kell teljes egészében a memóriába betöltődni:

sr := cells_foss.NewStreamingReader("large_workbook.xlsx")
err := sr.ProcessRows("Sheet1", func(rowIdx int, cells map[string]string) error {
	// process one row at a time
	return nil
})
if err != nil {
	fmt.Printf("Error streaming: %v\n", err)
}

Gyors indítás

Telepítse a modult:

go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26

Egy minimális munkafolyamat — hozzon létre egy munkafüzetet, írjon két cellát, tegyen félkövérre a fejlécet, és mentse el:

package main

import (
	"fmt"

	cells_foss "github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26/aspose/cells_foss"
)

func main() {
	wb := cells_foss.NewWorkbook()
	ws := wb.Worksheets[0]

	ws.Cells().Set("A1", "Product")
	ws.Cells().Set("B1", "Revenue")

	boldStyle := cells_foss.NewStyle()
	boldStyle.Font.Bold = true
	for _, ref := range []string{"A1", "B1"} {
		cell, _ := ws.Cells().Get(ref)
		cell.SetStyle(boldStyle)
	}

	if err := wb.Save("report.xlsx"); err != nil {
		fmt.Printf("Error saving workbook: %v\n", err)
		return
	}
	fmt.Println("Workbook saved to report.xlsx")
}

Támogatott formátumok

FormátumKiterjesztésOlvasásÍrás
XLSX.xlsx
CSV.csv

Az XLSX munkafüzetek a memóriában jönnek létre a NewWorkbook segítségével, és a Workbook.Save paranccsal íródnak. A CSV kétirányú, a Workbook.ImportFromCSV és a Workbook.ExportToCSV segítségével.


Nyílt forráskód & licencelés

Aspose.Cells FOSS for Go MIT licenc alatt kerül kiadásra. Nincsenek felhasználási korlátozások, futásidő díjak, és regisztrációs követelmények. A forráskód elérhető itt: github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go.

A kereskedelmi felhasználás megengedett az MIT licenc feltételei szerint. Ha projektje vállalati szintű támogatást, kibővített formátum lefedettséget vagy felhőintegrációt igényel, a Aspose.Cells — Enterprise Product Family egy külön kereskedelmi ajánlat.


Első lépések

Kapcsolódó erőforrások