在 Swift 中将对象写入 CSV 时如何处理逗号?

UKD*_*eek -1 csv swift

堆栈溢出似乎还有其他答案,但没有任何特定于 swift 的答案。

我正在从包含 3 个属性的站点对象生成 CSV

Struct SiteDetails {
    var siteName:String?
    var siteType: String?
    var siteUrl: String?
}
Run Code Online (Sandbox Code Playgroud)

问题是 siteName 可能包含一个逗号,因此当我读回 CSV 文件时,很难将 CSV 转换回对象,因为某些行有 4 个或更多 CSV 元素。

这是我用来导出到 CSV 的代码:

func convertToCSV(sites: [SiteDetails]) -> String {
     var siteAsCSV = ""
     siteAsCSV.appendContentsOf("siteName,siteType,siteUrl\n")

     for site in sites { 
        siteAsCSV.appendContentsOf("\(site.siteName),\(site.siteType),\(site.siteUrl)\n")
    }
}
Run Code Online (Sandbox Code Playgroud)

任何想法如何阻止这个额外的逗号问题?

vad*_*ian 5

CSV规范建议包含在双引号特殊字符的所有领域。