Swift:
Arbeta med csv
How to:
För att jobba med CSV-filer i Swift kan man använda String
-metoder för att dela upp innehållet. Nedan ser du hur man kan läsa och skriva CSV-data.
import Foundation
// Exempel på CSV-sträng
let csvString = """
Name,Age,Job
Alice,35,Developer
Bob,30,Designer
"""
// Läsa CSV
func readCSV(contents: String) -> [[String]] {
let rows = contents.components(separatedBy: "\n").filter { !$0.isEmpty }
return rows.map { $0.components(separatedBy: ",") }
}
let data = readCSV(contents: csvString)
print(data)
// Skriva till CSV
func writeCSV(data: [[String]]) -> String {
var contents = ""
for row in data {
contents += row.joined(separator: ",") + "\n"
}
return contents
}
let newCSVString = writeCSV(data: data)
print(newCSVString)
Sample output:
[["Name", "Age", "Job"], ["Alice", "35", "Developer"], ["Bob", "30", "Designer"]]
Name,Age,Job
Alice,35,Developer
Bob,30,Designer
Deep Dive
CSV-formatet har historiskt sett varit ett enkelt sätt att överföra tabellformad data sedan 1970-talet. Alternativ till CSV inkluderar JSON och XML som också hanterar hierarkisk data. Swifts Codable
-protokoll kan användas för att mappa CSV-innehåll till anpassade datamodeller vilket ger starkare typsäkerhet och bättre hantering av komplex data.