บทนำ
นอกเหนือจากการสร้างและจัดรูปแบบเวิร์กบุ๊กแล้ว โค้ดสเปรดชีตในชีวิตประจำวันส่วนใหญ่ใช้เวลาในการอ่านและเขียนค่าของเซลล์, แนบสูตร, และย้ายข้อมูลระหว่าง 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 for Go เปิดตัวภายใต้ใบอนุญาต MIT. ไม่มีข้อจำกัดการใช้งาน, ไม่มีค่าธรรมเนียมการรันไทม์, และไม่มีข้อกำหนดการลงทะเบียน. โค้ดต้นฉบับพร้อมให้ดาวน์โหลดที่ github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go.
การใช้ในเชิงพาณิชย์ได้รับอนุญาตตามเงื่อนไขของใบอนุญาต MIT. หากโครงการของคุณต้องการการสนับสนุนระดับองค์กร, ครอบคลุมรูปแบบเพิ่มเติม, หรือการรวมเข้ากับคลาวด์, Aspose.Cells — Enterprise Product Family เป็นข้อเสนอเชิงพาณิชย์แยกต่างหาก.