相关疑难解决方法(0)

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

我已经读过从文本文件中读取和写入数据

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

所以问题是"如何将字符串附加到文本文件的末尾,而不读取文件并将整个内容写回来"?

到目前为止我有:

    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, encoding: NSUTF8StringEncoding, error: &err)
    }else {
        "\(NSDate()) -> \(object)".writeToURL(fileurl, atomically: true, encoding: NSUTF8StringEncoding, error: &err)
    }
    if err != nil{
        println("CANNOT LOG: \(err)")
    }
Run Code Online (Sandbox Code Playgroud)

append text-files swift

32
推荐指数
6
解决办法
3万
查看次数

将数据附加到Swift 3中的txt文件

基本上,我试图用Swift 3做到这一点:

write a titleString to file
For i=1 to n
    newString = createNewString()  //these may look like "1: a, b, c"
    append each new string to end of file
next i
Run Code Online (Sandbox Code Playgroud)

这是我做的:

let fileURL = URL(fileURLWithPath: completePath)
let titleString = "Line, Item 1, Item 2, Item 3"
var dataString: String
let list1 = [1, 2, 3, 4, 5]
let list2 = ["a", "b", "c", "d", "e"]
let list3 = ["p", "q", "r", "s", "t"]


for i in 0...4 { …
Run Code Online (Sandbox Code Playgroud)

csv text append ios swift3

6
推荐指数
1
解决办法
4781
查看次数

标签 统计

append ×2

csv ×1

ios ×1

swift ×1

swift3 ×1

text ×1

text-files ×1