מבוא
מעבר ליצירת ועיצוב חוברות עבודה, רוב קוד הגליונות היומיומי מבלה את זמנו בקריאת וכתיבת ערכי תאים, צירוף נוסחאות, והעברת נתונים בין XLSX ל-CSV. Aspose.Cells FOSS עבור Go מכסה את כל שלושת הפעולות דרך הסוגים Workbook ו-Cells.
הספרייה זמינה כמודול Go ב-github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go ומשוחררת תחת רישיון MIT. התקינו אותה עם go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26 בכל פרויקט Go 1.24+.
פוסט זה מדריך בקריאת/כתיבת תאים, נוסחאות, המרת CSV והסרת תאים.
תכונות מרכזיות
יצירת חוברת עבודה וכתיבת תאים
NewWorkbook() מחזירה חוברת עבודה עם גיליון עבודה אחד שכבר קיים. כתבו ערכים באמצעות 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")
קריאת תאים חזרה
Cells().Get(ref) מחזירה את ה-*Cell עבור הפנייה יחד עם שגיאה אם הפנייה אינה תקפה:
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)
השתמשו ב-Cells().All() כדי למנות כל תא מאוכלס באוסף כאשר צריכים לעבור על כל הגיליון.
הוספת נוסחה
Cell.SetFormula שומרת מחרוזת נוסחה בתא. צרו קודם את התא עם Set, ואז הצמידו את הנוסחה — הנוסחה מוערכת על-ידי Excel או LibreOffice בעת הפתיחה, ולא על-ידי הספרייה:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("D2", nil)
cell, _ := ws.Cells().Get("D2")
cell.SetFormula("C2*2")
המרת CSV
Workbook.ExportToCSV כותב אינדקס גיליון עבודה נתון לקובץ CSV עם המפריד שבחרת; Workbook.ImportFromCSV קורא קובץ CSV לגיליון עבודה בעל שם:
wb := cells_foss.NewWorkbook()
if err := wb.ExportToCSV(0, "inventory.csv", ','); err != nil {
fmt.Printf("Error exporting: %v\n", err)
return
}
הסרת תא
Cells().Remove(ref) מוחק את ערך התא:
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)
}
התחלה מהירה
התקן את המודול:
go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26תהליך מינימלי — בנה טבלה קטנה של ערכים וייצא אותה ל-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")
}
פורמטים נתמכים
| פורמט | סיומת | קריאה | כתיבה |
|---|---|---|---|
| XLSX | .xlsx | — | ✓ |
| CSV | .csv | ✓ | ✓ |
חוברות עבודה בפורמט XLSX נבנות בזיכרון באמצעות NewWorkbook ונכתבות עם Workbook.Save. CSV הוא דו-כיווני דרך Workbook.ImportFromCSV ו-Workbook.ExportToCSV.
קוד פתוח & רישוי
Aspose.Cells FOSS עבור Go שוחרר ברישיון MIT. אין מגבלות שימוש, אין דמי זמן ריצה, ואין דרישות רישום. קוד המקור זמין ב-github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go.
שימוש מסחרי מותר בהתאם לתנאי רישיון MIT. אם הפרויקט שלך דורש תמיכה ברמת ארגון, כיסוי פורמטים מורחב, או אינטגרציה עם ענן, ה-Aspose.Cells — Enterprise Product Family הוא הצעה מסחרית נפרדת.