1. منتجات
  2.   جدول
  3.   Swift
  4.   XlsxReaderWriterSwift
 
  

مكتبة Swift مجانية للقراءة والكتابة لملفات Excel XLSX

مكتبة Swift 5 مفتوحة المصدر قوية تمكن المطورين من إنشاء وقراءة ملفات XLSX، نسخ وإزالة الأوراق، تطبيق الأنماط والتنسيق وغيرها مجانًا.

ما هو XlsxReaderWriterSwift ؟

هل سئمت من الاشتباك مع صيغ الجداول المعقدة في مشاريع Swift الخاصة بك؟ تخيّل سيناريو يحتاج فيه تطبيقك إلى إنشاء تقرير مفصل، استيراد بيانات المستخدم من قالب، أو حتى بناء نموذج مالي ديناميكي—كل ذلك داخل نظام iOS. تحليل ملفات CSV يدويًا يحدّ من القدرة، والاعتماد على خدمات خارجية لمعالجة ملفات XLSX غير فعّال. هنا يأتي دور XlsxReaderWriterSwift، المكتبة المفتوحة المصدر القوية والذاتية، لتقديم المساعدة. توفر للمطورين بـ Swift مجموعة أدوات بديهية وقوية لقراءة وكتابة تنسيق .xlsx الحديث من Microsoft Excel بسلاسة، مباشرةً داخل تطبيقات iOS وmacOS وvisionOS.

XlsxReaderWriterSwift هي مكتبة Swift 5 قوية تمكّن مطوري البرمجيات من إنشاء وقراءة ملفات XLSX، المعيار للجداول الحديثة في Excel. توفر المكتبة عدة ميزات مهمة للعمل مع ملفات Microsoft Excel XLSX، مثل قراءة ملف XLSX، إنشاء ملفات XLSX جديدة، تطبيق الأنماط والتنسيق على الخلايا، إضافة وإدارة الصور في الخلايا، إنشاء تقارير، تضمين جداول البيانات، والعديد غير ذلك. تم بناؤها على أساس مكتبة C libxlsxwriter، وتُضيف مجموعة شاملة من الميزات إلى نظام Apple. وهذا يعني أنه يمكنك إنشاء ملفات Excel مكتملة المميزات، ومتوافقة بنسبة 100% مباشرةً من تطبيق iOS أو macOS الخاص بك.

Previous Next

البدء مع XlsxReaderWriterSwift

الطريقة الموصى بها لتثبيت XlsxReaderWriterSwift هي باستخدام CocoaPods. يرجى استخدام الأمر التالي لتثبيت سلس.

تثبيت XlsxReaderWriterSwift عبر CocoaPods

 pod "XlsxReaderWriterSwift"

pod install

تثبيت XlsxReaderWriterSwift عبر GitHub

git clone https://github.com/mehulparmar4ever/XlsxReaderWriterSwift.git

يمكنك تنزيله مباشرةً من GitHub.

إنشاء وكتابة ملف XLSX جديد عبر مكتبة Swift

إنشاء ملف جديد من الصفر وتعبئته بالبيانات سهل بنفس القدر. توفر مكتبة XlsxReaderWriterSwift المفتوحة المصدر دعمًا كاملًا لإنشاء وإدارة جداول Excel XLSX داخل تطبيقات Swift. يمكن للمطورين إنشاء ورقة عمل جديدة، إعادة تسمية ورقة موجودة، نسخ بيانات الورقة، حفظ المستند في مكان محدد، وغيرها. يوضح المثال التالي كيف يمكن للمطورين إنشاء ورقة عمل Excel XLSX جديدة باستخدام مكتبة Swift.

كيف تنشئ ورقة عمل Excel XLSX جديدة عبر مكتبة Swift؟

import XlsxReaderWriterSwift

// 1. Create a new, empty document
let document = BRAOfficeDocumentPackage()

// 2. Get the first worksheet and give it a name
guard let worksheet = document.workbook.worksheets.first as? BRAWorksheet else {
    return
}
worksheet.name = "User Data"

// 3. Write different types of data to cells
worksheet.cell(forCellReference: "A1", shouldCreate: true).stringValue = "Name"
worksheet.cell(forCellReference: "B1", shouldCreate: true).stringValue = "Score"
worksheet.cell(forCellReference: "A2", shouldCreate: true).stringValue = "Alice"
worksheet.cell(forCellReference: "B2", shouldCreate: true).integerValue = 95
worksheet.cell(forCellReference: "A3", shouldCreate: true).stringValue = "Bob"
worksheet.cell(forCellReference: "B3", shouldCreate: true).integerValue = 87

// 4. Define a file path to save the document
let documentsDirectory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
let fileURL = documentsDirectory.appendingPathComponent("NewReport.xlsx")

// 5. Save the document to the specified path
do {
    let data = document.save()
    try data?.write(to: fileURL)
    print("Spreadsheet saved successfully at: \(fileURL.path)")
} catch {
    print("Failed to save spreadsheet: \(error)")
}

تطبيق تنسيق خلية متقدم عبر Swift

الجداول ليست مجرد بيانات؛ العرض مهم أيضًا. توفر واجهة برمجة تطبيقات XlsxReaderWriterSwift المفتوحة المصدر تحكمًا واسعًا في تنسيق الخلايا. تتجاوز مجرد إدخال البيانات البسيط. يمكنك تطبيق مجموعة واسعة من خيارات التنسيق، بما في ذلك محاذاة الخلية وتنسيق الأرقام، إنشاء خلايا جديدة، إنشاء أنماط جديدة، الوصول إلى الأنماط الحالية، تطبيق حدود على نطاق من الخلايا، وغيرها. إليكم مثالًا بسيطًا يوضح كيفية تطبيق الأنماط المتقدمة على خلايا Excel باستخدام أوامر Swift.

كيف تطبق أنماط متقدمة على خلايا Excel باستخدام مكتبة Swift؟

// ... (after creating a worksheet and cell)

// Get or create a cell
let headerCell = worksheet.cell(forCellReference: "A1", shouldCreate: true)
headerCell.stringValue = "Sales Report"

// Access the cell's style
let style = headerCell.cellStyle()

// Configure the style
style.font.bold = true
style.font.size = 18
style.fill.foregroundColor = .blue // Background color
style.fill.patternType = .solid
style.alignment.horizontal = .center

// Apply a border to a range of cells
let borderStyle = BRABorderStyle()
borderStyle.lineStyle = .medium
borderStyle.color = .darkGray

let dataRange = worksheet.cells(inRows: 1...3, columns: 1...2)
for cell in dataRange {
    (cell as? BRACell)?.cellStyle().bottomBorder = borderStyle
}

قراءة ملف XLSX عبر مكتبة Swift

تسمح مكتبة XlsxReaderWriterSwift المفتوحة المصدر للمطورين بالتلاعب بالبيانات داخل جداول Excel باستخدام Swift API. تتيح المكتبة تنفيذ عمليات تلاعب متعددة بالبيانات، مثل الفرز، التصفية، وحساب القيم داخل أوراق Excel. وهذا يجعلها أداة مثالية لمهام مثل تحليل البيانات وإعداد التقارير. بالإضافة إلى ذلك، يمكن للمطورين بسهولة استخراج البيانات من خلايا أو صفوف أو أعمدة محددة داخل ورقة Excel باستخدام Swift API. هذا مفيد للغاية عند التعامل مع مجموعات بيانات كبيرة وتحتاج فقط إلى معلومات محددة.

كيف تقرأ البيانات من ملف Excel XLSX باستخدام واجهة برمجة تطبيقات Swift المجانية؟

import XlsxReaderWriterSwift
// 1. Locate the .xlsx file in your app's bundle
guard let filePath = Bundle.main.path(forResource: "SampleData", ofType: "xlsx") else {
    print("File not found!")
    return
}

// 2. Create a BRAOfficeDocumentPackage object from the file
let document = BRAOfficeDocumentPackage.open(filePath)

// 3. Get the first worksheet
guard let worksheet = document.workbook.worksheets.first as? BRAWorksheet else {
    print("No worksheets found!")
    return
}

// 4. Read data from specific cells
if let cellA1 = worksheet.cell(forCellReference: "A1") {
    let stringValue = cellA1.stringValue() // Gets the value as a String
    print("A1: \(stringValue)")
}

if let cellB2 = worksheet.cell(forCellReference: "B2") {
    let numberValue = cellB2.floatValue() // Gets the value as a Float
    print("B2: \(numberValue)")
}

// 5. Iterate over a range of cells
for row in 1...5 {
    for column in 1...3 {
        let cellReference = "\(UnicodeScalar(64 + column)!)\(row)" // Creates refs like A1, B1, etc.
        if let cell = worksheet.cell(forCellReference: cellReference),
           let value = cell.stringValue() {
            print("\(cellReference): \(value)")
        }
    }
}

 عربي