在Swift中将文本或数据附加到文本文件

在Swift中将文本或数据附加到文本文件,第1张

概述我已经读了 Read and write data from text file 我需要将数据(一个字符串)附加到我的文本文件的末尾. 一个明显的方法是从磁盘读取文件,并将字符串附加到其末尾并将其写回来,但是效率不高,尤其是在处理大文件并经常执行时. 所以问题是“如何将字符串附加到文本文件的末尾,而不读取文件并写回整个事物”? 到目前为止我有: let dir:NSURL = NSFileMana 我已经读了 Read and write data from text file

我需要将数据(一个字符串)附加到我的文本文件的末尾.
一个明显的方法是从磁盘读取文件,并将字符串附加到其末尾并将其写回来,但是效率不高,尤其是在处理大文件并经常执行时.

所以问题是“如何将字符串附加到文本文件的末尾,而不读取文件并写回整个事物”?

到目前为止我有:

let dir:NSURL = NSfileManager.defaultManager().URLsForDirectory(NSSearchPathDirectory.CachesDirectory,inDomains: NSSearchPathDomainMask.UserDomainMask).last as NSURL    let fileurl =  dir.URLByAppendingPathComponent("log.txt")    var err:NSError?    // until we find a way to append stuff to files    if let current_content_of_file = Nsstring(contentsOfURL: fileurl,enCoding: NSUTF8StringEnCoding,error: &err) {        "\(current_content_of_file)\n\(NSDate()) -> \(object)".writetoURL(fileurl,atomically: true,error: &err)    }else {        "\(NSDate()) -> \(object)".writetoURL(fileurl,error: &err)    }    if err != nil{        println("CANNOT LOG: \(err)")    }
@H_419_13@ 你应该使用NSfileHandle,它可以是 seek to the end of the file
let dir:NSURL = NSfileManager.defaultManager().URLsForDirectory(NSSearchPathDirectory.CachesDirectory,inDomains: NSSearchPathDomainMask.UserDomainMask).last as NSURLlet fileurl =  dir.URLByAppendingPathComponent("log.txt")let string = "\(NSDate())\n"let data = string.dataUsingEnCoding(NSUTF8StringEnCoding,allowLossyConversion: false)!if NSfileManager.defaultManager().fileExistsAtPath(fileurl.path!) {    var err:NSError?    if let fileHandle = NSfileHandle(forWritingToURL: fileurl,error: &err) {        fileHandle.seekToEndOffile()        fileHandle.writeData(data)        fileHandle.closefile()    }    else {        println("Can't open fileHandle \(err)")    }}else {    var err:NSError?    if !data.writetoURL(fileurl,options: .DataWritingAtomic,error: &err) {        println("Can't write \(err)")    }}
总结

以上是内存溢出为你收集整理的在Swift中将文本或数据附加到文本文件全部内容,希望文章能够帮你解决在Swift中将文本或数据附加到文本文件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1040498.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存