无法打开 CSV 文件 Swift

马泰利

我正在尝试在 iPad 上的文档目录或临时目录中创建一个简单的 CVS 文件。这段代码如下:

 let fileName = "test.csv"

        _ = NSURL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent(fileName)

然后我尝试使用来自 github 的 CSV.swift 库修改文件,如下所示:

let stream = OutputStream(toFileAtPath: "test.csv", append: false)!

        let csv = try! CSVWriter(stream: stream) // Error at this line


        try! csv.write(row: headerarray)
        try! csv.write(row: dataarray)

        csv.stream.close()

出于某种原因,我收到错误消息 CSV.CSVError.cannotOpenFile: file /Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-802.0.53/src/swift/stdlib/public/core/ErrorType.swift

看起来我没有正确创建 .csv 文件。

价格林戈

您正在丢弃第二行中临时目录的路径。那是你的问题。因此fileName,您不是在临时目录中添加,而是尝试将其添加到硬盘的根目录中。我怀疑您对此是否有权限,因此无法创建该文件。尝试像我在下面函数的第一行中所做的那样构建完整的路径名。

这是一个使用流将字符串写入临时目录中的文件的函数。

func streamTextToFile(_ text: String) {
  let url = URL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent("test.csv")
  guard let stream = OutputStream(toFileAtPath: url.path, append: false) else { return }
  let data = [UInt8](text.utf8)
  stream.open()
  stream.write(data, maxLength: data.count)
  stream.close()
}

这是一些示例输出。 在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章