可以使用swift将用户输入输出到.csv吗?

时间:2018-06-26 15:58:02

标签: ios swift

我对学习Swift编码非常陌生。我正在尝试制作一个保留要进入人员名单的应用程序。我希望该应用程序记录他们输入的姓名,访问时间以及访问性质。但是,我希望能够将其导出到Numbers或Excel之类的程序。我发现了一些有关存储用户输入的信息,但是如果关闭应用程序,这些输入似乎会被删除。我似乎找不到任何其他信息,但也许我只是在搜索错误的信息。任何帮助或指导表示赞赏。

1 个答案:

答案 0 :(得分:1)

只需将日志存储在数组中,然后使用此功能将其保存到.csv文件中即可。

application/json

现在您可以调用它:

func saveCSV(_ name : String,_ customUrl : URL) -> Bool {

    let fileName = "\(name).csv"
    let b = customUrl.appendingPathComponent(fileName)


    var csvText = ""
    var id = "1"
    var name = "test"
    csvText = "ID,Name\n"
    let newLine = "\(id),\(name))\n"
    csvText.append(newLine)

    //or create a loop
    // Task is my custom Struct
    var array : [Task]
    for task in customArray {
        let newLine = "\(task.ean),\(task.menge),\(task.name)\n"
        csvText.append(newLine)
    }

    do {
        try csvText.write(to: b, atomically: true, encoding: String.Encoding.utf8)
        return true
    } catch {
        print("Failed to create file")
        print("\(error)")
        return false
    }
}

func createDic()->URL?{
            let documentsPath1 = NSURL(fileURLWithPath: NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0])
            // CSV is the folder name
            let logsPath = documentsPath1.appendingPathComponent("CSV")
            do {
                try FileManager.default.createDirectory(atPath: logsPath!.path, withIntermediateDirectories: true, attributes: nil)
                return logsPath
            } catch let error as NSError {
                NSLog("Unable to create directory \(error.debugDescription)")
            }
            return nil
        }

var customUrl = createDic()

,然后您就可以使用.csv文件