Swift:writeToFile不在iOS设备上保存文件

Swift:writeToFile不在iOS设备上保存文件,ios,iphone,xcode,file,swift,Ios,Iphone,Xcode,File,Swift,我从文本文件中读取了一个字符串: text=StringcontentsOfFile:path!,编码:NSUTF8StringEncoding,错误:nil!。 使用printlntext我得到一些文本的输出 现在我还有另一个字符串otherSting=其他文本。我要做的是将此文本保存到文本文件中。我尝试使用otherText.writeToFilepath!,原子性:true,编码:NSUTF8StringEncoding,错误:nil,然后再次读取文本文件。在iOS模拟器上尝试时,我得到了

我从文本文件中读取了一个字符串: text=StringcontentsOfFile:path!,编码:NSUTF8StringEncoding,错误:nil!。 使用printlntext我得到一些文本的输出

现在我还有另一个字符串otherSting=其他文本。我要做的是将此文本保存到文本文件中。我尝试使用otherText.writeToFilepath!,原子性:true,编码:NSUTF8StringEncoding,错误:nil,然后再次读取文本文件。在iOS模拟器上尝试时,我得到了预期的输出:其他文本。但在我的iPhone上执行相同的应用程序时,我仍然会收到一些文本。有人知道我做错了什么吗

编辑:

我还尝试使用otherText.writeToURLurl!,原子性:true,编码:NSUTF8StringEncoding,错误:nil,结果相同


提前感谢

如果您收到旧文本,您显然正在阅读旧文件。确保有两个不同的路径或url变量

最可能发生的情况是,您保存到文件1,试图覆盖相同的文件1,但该文件以静默方式失败,因此文件1包含原始数据


此外,正如Paulw所指出的,您不能向您的包中写入数据。相反,您必须将文件复制到第一个,或者在那里创建它们

是的,我试图做的是覆盖原始文件。因此,path变量必须相同,因为它是我要从中读取的同一文件,但第二次它应该包含新数据。如果文件存在,请先删除该文件,使用fileExistsAtPath检查并删除ItemAtPath删除它。这些是NSFileManager API。所以我应该先删除它,然后再创建另一个?为什么我不能覆盖第一个文件?好的,我尝试删除第一个文件,然后将新文件保存在同一路径。同样的结果路径是什么?它是你包里的一个文件吗?如果是这样的话,你就不能写了。如果你把你正在做的事情的完整顺序,以及日志语句和它们的输出发布出来,也许会有帮助。