删除文本文件的内容
Deleting contents of text file
我正在读取和写入一个文本文件。有一个例子,我想删除文件的内容(但不是文件)作为一种重置。我该怎么做?
if ((dirs) != nil) {
var dir = dirs![0]; //documents directory
let path = dir.stringByAppendingPathComponent("UserInfo.txt");
println(path)
let text = "Rondom Text"
//writing
text.writeToFile(path, atomically: false, encoding: NSUTF8StringEncoding, error: nil)
//reading
let text2 = String(contentsOfFile: path, encoding: NSUTF8StringEncoding, error: nil)
println(text2)
如果设置 NSFileHandle
,则可以使用 -truncateFileAtOffset:
,传递 0 作为偏移量。
或者,如评论中所指出的,您可以简单地将空字符串或数据写入文件。
或者您可以使用某种不需要您手动截断文件的数据结构/数据库:)
像这样简单地向文件写入一个空字符串:
let text = ""
text.writeToFile(path, atomically: false, encoding: NSUTF8StringEncoding, error: nil)
Swift 3.x
let text = ""
do {
try text.write(toFile: fileBundlePath, atomically: false, encoding: .utf8)
} catch {
print(error)
}
Swift 4.x
let text = ""
do {
try text.write(to: filePath, atomically: false, encoding: .utf8)
} catch {
print(error)
}
我正在读取和写入一个文本文件。有一个例子,我想删除文件的内容(但不是文件)作为一种重置。我该怎么做?
if ((dirs) != nil) {
var dir = dirs![0]; //documents directory
let path = dir.stringByAppendingPathComponent("UserInfo.txt");
println(path)
let text = "Rondom Text"
//writing
text.writeToFile(path, atomically: false, encoding: NSUTF8StringEncoding, error: nil)
//reading
let text2 = String(contentsOfFile: path, encoding: NSUTF8StringEncoding, error: nil)
println(text2)
如果设置 NSFileHandle
,则可以使用 -truncateFileAtOffset:
,传递 0 作为偏移量。
或者,如评论中所指出的,您可以简单地将空字符串或数据写入文件。
或者您可以使用某种不需要您手动截断文件的数据结构/数据库:)
像这样简单地向文件写入一个空字符串:
let text = ""
text.writeToFile(path, atomically: false, encoding: NSUTF8StringEncoding, error: nil)
Swift 3.x
let text = ""
do {
try text.write(toFile: fileBundlePath, atomically: false, encoding: .utf8)
} catch {
print(error)
}
Swift 4.x
let text = ""
do {
try text.write(to: filePath, atomically: false, encoding: .utf8)
} catch {
print(error)
}