फ़ीचर अवलोकन
फ़ीचर अवलोकन
Aspose.Cells FOSS for Go’s API केंद्रित है Workbook, Worksheet, Cells, और Cell पर। यह गाइड लाइब्रेरी की अन्य क्षमताओं को दर्शाता है: स्टाइलिंग, डेटा वैलिडेशन, टेबल्स, चित्र, और बड़े फ़ाइलों के लिए स्ट्रीमिंग रीड्स।
सेल स्टाइलिंग
ग्रुप Font, Fill, Alignment, और Border सेटिंग्स को एक पुन: उपयोग योग्य Style में समूहित करें, फिर इसे Cell.SetStyle के साथ एक सेल पर लागू करें:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
boldStyle := cells_foss.NewStyle()
boldStyle.Font.Bold = true
boldStyle.Font.Size = 12
highlightStyle := cells_foss.NewStyle()
highlightStyle.Font.Color = "FFFFFFFF"
highlightStyle.Font.Bold = true
highlightStyle.Fill = &cells_foss.Fill{
Type: cells_foss.FillTypeSolid,
Color: "FF4472C4",
}
cell, _ := ws.Cells().Get("A1")
cell.SetStyle(boldStyle)Alignment नियंत्रण करता है Horizontal, Vertical, और WrapText; Border नियंत्रण करता है Top, Bottom, Left, और Right नियम दृश्यता और Color।
डेटा वैलिडेशन
Worksheet.AddDataValidation एक वैधता नियम को सेल रेंज से संलग्न करता है। DataValidation स्ट्रक्ट नियम Type, एक या दो Formula मान, और त्रुटि-संदेश फ़ील्ड्स को ले जाता है:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
dv := &cells_foss.DataValidation{
Type: cells_foss.DataValidationTypeList,
Formula1: `"Apple,Banana,Cherry,Dragonfruit"`,
AllowBlank: true,
ShowErrorMessage: true,
ErrorTitle: "Invalid Fruit",
ErrorMessage: "Please pick a fruit from the list.",
ErrorStyle: cells_foss.ErrorStyleStop,
}
ws.AddDataValidation("A2:A10", dv)एक पूर्णांक रेंज वैधता DataValidationTypeWhole का उपयोग करती है जिसमें Formula1/Formula2 को निचले और ऊपरी सीमाओं के रूप में प्रयोग किया जाता है।
टेबल्स
Worksheet.AddTable एक रेंज पर संरचित Table बनाता है, जिसमें वैकल्पिक हेडर पंक्ति और नामित टेबल शैली होती है:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
tbl := ws.AddTable("A1:F6")
tbl.HasHeaderRow = true
tbl.StyleName = "TableStyleMedium6"नाम से मौजूदा टेबल को Worksheet.GetTable(name) के साथ प्राप्त करें।
चित्र
Worksheet.AddPicture एक छवि एम्बेड करता है; Picture.SetAnchor(row, col) इसे स्थित करता है:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
imageBytes := []byte{} // populate with real image bytes before use
pic := &cells_foss.Picture{Data: imageBytes, Format: "png"}
ws.AddPicture(pic)
pic.SetAnchor(5, 0)बड़ी फ़ाइलों का स्ट्रीमिंग
StreamingReader एक कॉलबैक के माध्यम से कार्यपत्रक को पंक्ति दर पंक्ति पढ़ता है, इसलिए कई हजार पंक्तियों वाला वर्कबुक पूरी तरह मेमोरी में लोड नहीं करना पड़ता:
path := "outputfiles/large_workbook.xlsx"
sr := cells_foss.NewStreamingReader(path)
err := sr.ProcessRows("Sheet1", func(rowIdx int, cells map[string]string) error {
// process one row at a time
return nil
})
if err != nil {
fmt.Printf("Error streaming: %v\n", err)
}टिप्स और सर्वोत्तम प्रथाएँ
- जब फ़ाइल में हजारों पंक्तियाँ हों और आपको केवल पढ़ना हो, संशोधित नहीं करना हो, तब पूर्ण
Workbookलोड करने के बजायStreamingReaderका उपयोग करें। - एक बार
Styleबनाएं और कई सेल्स में पुन: उपयोग करें, बजाय प्रत्येक सेल के लिए नया बनाते हुए। Cell.SetFormulaफ़ॉर्मूला स्ट्रिंग को जैसा है वैसा ही संग्रहीत करता है — इसे खोलते समय Excel या LibreOffice द्वारा मूल्यांकित किया जाता है, न कि लाइब्रेरी द्वारा सहेजते समय।- अमान्य पथ या विकृत इनपुट पर स्प्रेडशीट I/O विफल हो सकता है — इसलिए
Save,AddDataValidation, और CSV आयात/निर्यात कॉल्स सेerrorरिटर्न वैल्यू जांचें।
सामान्य समस्याएँ
| Issue | Cause | सुधारें |
|---|---|---|
सेल मान Set के बाद दिखाई नहीं देता | गलत शीट या सीमा से बाहर सेल संदर्भ का उल्लेख करना | यह पुष्टि करें कि Worksheet इंडेक्स सही है और A1-शैली का संदर्भ इच्छित सेल से मेल खाता है |
| फ़ॉर्मूला गणना करने के बजाय कच्चे टेक्स्ट के रूप में दिख रहा है | लाइब्रेरी केवल फ़ॉर्मूला स्ट्रिंग संग्रहीत करती है; यह फ़ॉर्मूले का मूल्यांकन नहीं करती | फ़ाइल को Excel या LibreOffice में खोलें, जो खोलते ही गणना करता है |
| डेटा वैलिडेशन Excel में दिखाई नहीं देता | वैलिडेशन एक ऐसे रेंज में जोड़ी गई है जिसमें लक्ष्य सेल शामिल नहीं है | पुष्टि करें कि रेंज स्ट्रिंग (जैसे "A2:A10") उन कोशिकाओं को कवर करती है जिन्हें आप वैलिडेट करने की उम्मीद रखते हैं |
FAQ
क्या लाइब्रेरी स्वयं फ़ॉर्मूले का मूल्यांकन करती है?
नं. Cell.SetFormula/GetFormula एक फ़ॉर्मूला स्ट्रिंग संग्रहीत करता है जिसे Excel या LibreOffice फ़ाइल खोलने पर मूल्यांकन करता है।
क्या मैं बड़े वर्कबुक को स्ट्रीम-राइट कर सकता हूँ, केवल स्ट्रीम-रीड नहीं?
StreamingReader स्ट्रीमिंग रीड को कवर करता है। बड़े वर्कबुक लिखना वर्तमान में मानक इन-मेमोरी Workbook/Worksheet API के माध्यम से होता है।
क्या AddTable स्वतः एक ऑटो-फ़िल्टर लागू करता है?
यह वर्तमान API सतह में पुष्टि नहीं हुई है — केवल HasHeaderRow और StyleName दस्तावेज़ित Table फ़ील्ड हैं। यदि यह आपके उपयोग के मामले में महत्वपूर्ण है तो उत्पन्न .xlsx फ़ाइल के खिलाफ सत्यापित करें।
API Reference सारांश
| क्लास / मेथड | विवरण |
|---|---|
Workbook.NewWorkbook / Save | एक वर्कबुक बनाएं और सहेजें |
Worksheet.Cells | एक वर्कशीट के लिए सेल कलेक्शन तक पहुँचें |
Cells.Get / Set / Remove / All | सेलों को पढ़ें, लिखें, हटाएँ, और क्रमांकित करें |
Cell.SetStyle / SetFormula / GetFormula | एक सेल पर शैलीकरण और फ़ॉर्मूले लागू करें |
Style, Font, Fill, Alignment, Border | पुन: उपयोग योग्य सेल फ़ॉर्मेटिंग बनाएँ |
Worksheet.AddDataValidation | सेल रेंज में एक वैधता नियम जोड़ें |
Worksheet.AddTable / GetTable | संरचित तालिका रेंज बनाएं और प्राप्त करें |
Worksheet.AddPicture / Picture.SetAnchor(row, col) | छवियों को एम्बेड करें और स्थिति निर्धारित करें |
StreamingReader.ProcessRows | वर्कशीट को पंक्ति दर पंक्ति स्ट्रीम करें |
Workbook.ExportToCSV / ImportFromCSV | XLSX और CSV के बीच रूपांतरण करें |
Workbook.SetPassword / VerifyPassword | वर्कबुक पासवर्ड को सुरक्षित करें और जाँचें |