Go'da Bir Elektronik Tablo Nasıl Yüklenir
Aspose.Cells FOSS for Go, mevcut bir .xlsx çalışma kitabını belleğe Workbook olarak yükler ve standart kütüphane API aracılığıyla çalışma sayfalarına ve hücrelerine tam erişim sağlar. Başlamadan önce modülü go get ile kurun.
Adım Adım Kılavuz
Adım 1: Paketi Kurun
go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26Kurulumdan sonra go.mod içindeki modül sürümünü doğrulayın.
Adım 2: Gerekli Sınıfları İçe Aktarın
import (
cells_foss "github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26/aspose/cells_foss"
)Adım 3: Yüklemek için Bir Çalışma Kitabı Oluşturun ve Doldurun
Bu örnek, önce bir çalışma kitabı oluşturarak yüklemek için gerçek bir .xlsx dosyası sağlar — kendi kodunuzda, mevcut bir elektronik tabloya giden yolu değiştirin:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("A1", "Product")
ws.Cells().Set("B1", "Price")
ws.Cells().Set("A2", "Widget A")
ws.Cells().Set("B2", 12.99)
wb.Save("outputfiles/products.xlsx")Adım 4: Yüklenen Çalışma Sayfasından Hücre Değerlerini Okuyun
Worksheets[0] aracılığıyla ilk çalışma sayfasına erişin ve Cells().Get(ref) ile bireysel hücreleri okuyun:
wb := cells_foss.NewWorkbook()
wb.Worksheets[0].Cells().Set("B2", 12.99)
ws2 := wb.Worksheets[0]
cell, err := ws2.Cells().Get("B2")
if err != nil {
fmt.Printf("Error reading cell: %v\n", err)
return
}
fmt.Printf("Price: %v\n", cell.Value)Adım 5: Dolu Tüm Hücreleri Listeleyin
Bilinmeyen referansları tek tek okumak yerine ayarlanmış her hücreyi yinelemek gerektiğinde Cells().All() kullanın:
wb := cells_foss.NewWorkbook()
ws2 := wb.Worksheets[0]
ws2.Cells().Set("A1", "Product")
allCells := ws2.Cells().All()
for ref, c := range allCells {
fmt.Printf("%s = %v\n", ref, c.Value)
}Yaygın Sorunlar ve Çözümler
Get bir hücre referansı için bir hata döndürür. Referans henüz koleksiyonda ayarlanmamış. Hücrenin şu şekilde yazıldığını doğrulayın Set, ya da döndürülen error hücreyi kullanmadan önce açıkça kontrol edin.
Değerler yanlış tür gibi görünüyor. Cell.Value ile geçirilen herhangi bir türü yansıtır Set (string, int, float64 ve benzeri) — temel Go türüne göre dallanmanız gerekiyorsa bir type switch ile inceleyin.
Yüklenen çalışma kitabı beklenen sayfada veri içermiyor. Doğru girişi indekslediğinizden emin olun Worksheets — bir çalışma kitabı birden fazla çalışma sayfasına sahip olabilir ve hedef veri üzerinde olmayabilir Worksheets[0].
Sıkça Sorulan Sorular
Bir çalışma kitabını yüklemek, orijinal dosyanın hâlâ diskte mevcut olmasını gerektirir mi?
Evet — Workbook, sağladığınız dosya yolundan okur. Kaynak dosyayı, yükleme süresi boyunca erişilebilir tutun.
Yükledikten sonra bir hücreyi değiştirebilir ve değişiklikleri geri kaydedebilir miyim?
Evet — Cells().Set, yüklü bir çalışma kitabında yeni oluşturulmuş bir tanesi gibi çalışır; değişikliklerinizi yazmak için Save‘i tekrar çağırın.
Tüm dosyayı belleğe yüklemeden kaçınmanın bir yolu var mı?
Evet — yalnızca satırları sıralı olarak okumanız gerektiğinde ve tüm çalışma kitabını yüklemek yerine büyük dosyalar için StreamingReader.ProcessRows kullanın.