Ios 清除文件内容

Ios 清除文件内容,ios,objective-c,file-io,Ios,Objective C,File Io,我正在尝试删除iOS的内容文本文件 或者,我可以删除该文件,然后立即重新创建它,不包含任何内容 对于此解决方案,我知道可以使用[fileManager removietematpath:filePath error:&error]删除该文件。重新创建文件对我来说是困难的部分 我正在使用以下代码查找该文件: NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)

我正在尝试删除iOS的内容文本文件

或者,我可以删除该文件,然后立即重新创建它,不包含任何内容

对于此解决方案,我知道可以使用
[fileManager removietematpath:filePath error:&error]删除该文件。重新创建文件对我来说是困难的部分

我正在使用以下代码查找该文件:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];

NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"myFile.txt"];

NSFileManager *fileManager = [NSFileManager defaultManager];

if([fileManager fileExistsAtPath:filePath])
{
    [fileManager removeItemAtPath:filePath error:&error];
}

//code to recreate the same file, just with no content
试一试

斯威夫特

NSFileManager.defaultManager().createFileAtPath(path, contents: nil, attributes: nil)

或者,您可以创建一个
FileHandle
实例并调用
truncateFile()
,如下所示:

var myFileHandle:FileHandle?
var fileName=“您的文件名.ext”
让路径=FileManager.default.url(对于:.documentDirectory,在:.userDomainMask中)
让docPath=path[0]。追加PathComponent(文件名)
如果!FileManager.default.fileExists(atPath:docPath.path){
FileManager.default.createFile(atPath:docPath.path,内容:Data(),属性:nil)
}
做{
myFileHandle=尝试FileHandle(forWritingTo:docPath)
myFileHandle?.truncateFile(atOffset:0)
}捕捉错误{
打印(“无法初始化文件句柄。错误:\(Error.localizedDescription)”)
}

如果您尝试
-[createFileAtPath:path Content:[NSData data]attributes:nil]
会发生什么?我可能会尝试这样做,但我正在尝试创建一个没有数据的空白文件。我可以为其内容发送一个空数据值吗?
[NSData data]
没有数据。传递
nil
将导致错误。我得到了它,它似乎正在工作。对我来说已经很晚了,我正试图创建一个已被弃用的FileAtDirectory。我犯了一个愚蠢的错误,没有找到createFileAtPath。谢谢你的帮助,先生。
NSFileManager.defaultManager().createFileAtPath(path, contents: nil, attributes: nil)