Darmowa biblioteka Swift do odczytu i zapisu plików Excel XLSX
Otwarta, solidna biblioteka Swift 5, która umożliwia programistom tworzenie i odczytywanie plików XLSX, kopiowanie, usuwanie arkuszy, stosowanie stylów i formatowania, i tak dalej – za darmo.
Co to jest XlsxReaderWriterSwift?
Zmęczeni walką z złożonymi formatami arkuszy w projektach Swift? Wyobraź sobie scenariusz, w którym aplikacja musi wygenerować szczegółowy raport, zaimportować dane użytkownika z szablonu lub nawet zbudować dynamiczny model finansowy — wszystko bezpośrednio w ekosystemie iOS. Ręczne parsowanie plików CSV jest ograniczające, a poleganie na zewnętrznych usługach do obsługi plików XLSX jest nieefektywne. Właśnie tutaj pojawia się XlsxReaderWriterSwift, potężna i natywna biblioteka open‑source, która ratuje sytuację. Dostarcza programistom Swift intuicyjne i solidne narzędzia, aby płynnie odczytywać i zapisywać nowoczesny format .xlsx Microsoft Excel, bezpośrednio w aplikacjach iOS, macOS i visionOS.
XlsxReaderWriterSwift to solidna biblioteka Swift 5, która umożliwia programistom tworzenie i odczytywanie plików XLSX, będących standardem współczesnych arkuszy Excel. Biblioteka oferuje szereg istotnych funkcji do pracy z plikami Microsoft Excel XLSX, takich jak odczyt plików, tworzenie nowych plików, stosowanie stylów i formatowania w komórkach, dodawanie i zarządzanie obrazami w komórkach, generowanie raportów, osadzanie arkuszy oraz wiele innych. Zbudowana na bazie biblioteki C libxlsxwriter, wprowadza kompletny zestaw funkcji do ekosystemu Apple. Oznacza to, że możesz generować w pełni funkcjonalne, w 100 % kompatybilne pliki Excel bezpośrednio z aplikacji iOS lub macOS.
Rozpoczęcie pracy z XlsxReaderWriterSwift
Zalecany sposób instalacji XlsxReaderWriterSwift to użycie CocoaPods. Proszę użyć następującego polecenia, aby przeprowadzić płynną instalację.
Zainstaluj XlsxReaderWriterSwift za pomocą CocoaPods
pod "XlsxReaderWriterSwift"
pod install
Zainstaluj XlsxReaderWriterSwift za pomocą GitHub
git clone https://github.com/mehulparmar4ever/XlsxReaderWriterSwift.git
Możesz pobrać go bezpośrednio z GitHub.
Tworzenie i zapisywanie nowego pliku XLSX przy użyciu biblioteki Swift
Utworzenie nowego pliku od podstaw i wypełnienie go danymi jest równie proste. Biblioteka open source XlsxReaderWriterSwift zapewnia pełne wsparcie dla tworzenia i zarządzania nowymi arkuszami Excel XLSX w aplikacjach Swift. Programiści mogą tworzyć nowe arkusze, zmieniać nazwy istniejących arkuszy, kopiować dane arkuszy, zapisywać dokument w określonym miejscu i tak dalej. Poniższy przykład pokazuje, jak łatwo programiści mogą stworzyć nowy arkusz Excel XLSX przy użyciu biblioteki Swift.
Jak stworzyć nowy arkusz Excel XLSX za pomocą biblioteki 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)")
}
Zastosowanie zaawansowanego stylowania komórek przy pomocy Swift
Arkusz kalkulacyjny to nie tylko dane; prezentacja ma znaczenie. API XlsxReaderWriterSwift zapewnia szeroką kontrolę nad stylizacją komórek. Obejmuje to znacznie więcej niż proste wprowadzanie danych. Możesz zastosować różnorodne opcje formatowania, w tym wyrównanie komórek i formatowanie liczb, tworzenie nowych komórek, tworzenie nowych stylów, dostęp do istniejących stylów, nakładanie obramowania na zakres komórek i tak dalej. Oto prosty przykład pokazujący, jak programiści mogą stosować zaawansowane style w komórkach Excel przy użyciu poleceń Swift.
Jak zastosować zaawansowane style do komórek Excel używając biblioteki 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
}
Odczyt pliku XLSX przy użyciu biblioteki Swift
Biblioteka open source XlsxReaderWriterSwift pozwala programistom manipulować danymi wewnątrz arkusza Excel przy użyciu API Swift. Biblioteka umożliwia wykonywanie różnych operacji manipulacji danymi, takich jak sortowanie, filtrowanie i obliczanie wartości w arkuszach Excel. Dzięki temu jest idealnym narzędziem do analiz i raportowania danych. Ponadto programiści mogą łatwo wyodrębniać dane z konkretnych komórek, wierszy lub kolumn w arkuszu Excel za pomocą API Swift. Jest to niezwykle przydatne przy pracy z dużymi zestawami danych i potrzebą uzyskania tylko określonych informacji.
Jak odczytać dane z pliku Excel XLSX za pomocą darmowego API 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)")
}
}
}