مقدمة

بخلاف إنشاء وتنسيق دفاتر العمل، يقضي معظم كود الجداول الإلكترونية اليومي وقته في قراءة وكتابة قيم الخلايا، وإرفاق الصيغ، ونقل البيانات بين XLSX و CSV. Aspose.Cells FOSS for 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 for Go متاح تحت رخصة MIT. لا توجد قيود على الاستخدام، ولا رسوم تشغيل، ولا متطلبات تسجيل. الشيفرة المصدرية متوفرة على github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go.

يسمح بالاستخدام التجاري بموجب شروط رخصة MIT. إذا كان مشروعك يحتاج إلى دعم على مستوى المؤسسات، أو تغطية صيغ موسعة، أو تكامل سحابي، فإن Aspose.Cells — Enterprise Product Family هو عرض تجاري منفصل.


البدء

الموارد ذات الصلة