Introduzione
Oltre a creare e formattare i workbook, la maggior parte del codice di fogli di calcolo quotidiano trascorre il tempo a leggere e scrivere i valori delle celle, allegare formule e spostare dati tra XLSX e CSV. Aspose.Cells FOSS per Go copre tutti e tre attraverso i tipi Workbook e Cells.
La libreria è disponibile come modulo Go su github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go ed è rilasciata sotto licenza MIT. Installala con go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26 in qualsiasi progetto Go 1.24+.
Questo articolo illustra la lettura/scrittura delle celle, le formule, la conversione CSV e la rimozione delle celle.
Caratteristiche principali
Crea una cartella di lavoro e scrivi celle
NewWorkbook() restituisce un workbook con un foglio di lavoro già presente. Scrivi valori con Cells().Set(ref, value):
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("A1", "Item")
ws.Cells().Set("B1", "Category")
ws.Cells().Set("C1", "Price")
ws.Cells().Set("A2", "Widget A")
ws.Cells().Set("B2", "Gadgets")
ws.Cells().Set("C2", 12.99)
wb.Save("inventory.xlsx")
Leggi nuovamente le celle
Cells().Get(ref) restituisce il *Cell per un riferimento insieme a un errore se il riferimento non è valido:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("C2", 12.99)
cell, err := ws.Cells().Get("C2")
if err != nil {
fmt.Printf("Error: %v\n", err)
return
}
fmt.Printf("C2 = %v\n", cell.Value)
Usa Cells().All() per enumerare ogni cella popolata nella collezione quando devi iterare sull’intero foglio.
Aggiungi una formula
Cell.SetFormula memorizza una stringa di formula in una cella. Crea prima la cella con Set, poi allega la formula — la formula è valutata da Excel o LibreOffice all’apertura, non dalla libreria:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("D2", nil)
cell, _ := ws.Cells().Get("D2")
cell.SetFormula("C2*2")
Conversione CSV
Workbook.ExportToCSV scrive un indice di foglio di lavoro specificato in un file CSV con il delimitatore di tua scelta; Workbook.ImportFromCSV legge un file CSV in un foglio di lavoro nominato:
wb := cells_foss.NewWorkbook()
if err := wb.ExportToCSV(0, "inventory.csv", ','); err != nil {
fmt.Printf("Error exporting: %v\n", err)
return
}
Rimuovi una cella
Cells().Remove(ref) cancella il valore di una cella:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("A2", "Widget A")
if err := ws.Cells().Remove("A2"); err != nil {
fmt.Printf("Error removing cell: %v\n", err)
}
Guida rapida
Installa il modulo:
go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26Un flusso di lavoro minimale — crea una piccola tabella di valori ed esportala in CSV:
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", "Item")
ws.Cells().Set("B1", "Price")
ws.Cells().Set("A2", "Widget A")
ws.Cells().Set("B2", 12.99)
if err := wb.ExportToCSV(0, "inventory.csv", ','); err != nil {
fmt.Printf("Error exporting: %v\n", err)
return
}
fmt.Println("Exported inventory.csv")
}
Formati supportati
| Formato | Estensione | Leggi | Scrivi |
|---|---|---|---|
| XLSX | .xlsx | — | ✓ |
| CSV | .csv | ✓ | ✓ |
I workbook XLSX sono costruiti in memoria con NewWorkbook e scritti con Workbook.Save. CSV è bidirezionale tramite Workbook.ImportFromCSV e Workbook.ExportToCSV.
Open Source & Licenze
Aspose.Cells FOSS per Go è rilasciato sotto licenza MIT. Non ci sono restrizioni d’uso, né costi di runtime, né requisiti di registrazione. Il codice sorgente è disponibile su github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go.
L’uso commerciale è consentito ai sensi dei termini della licenza MIT. Se il tuo progetto richiede supporto di livello enterprise, copertura estesa dei formati o integrazione cloud, il Aspose.Cells — Enterprise Product Family è un’offerta commerciale separata.