你能告诉我如何删除phonegap中的文本文件的争议吗?我有文本文件,上面有一些文字.我想在插入新文本之前删除该文本.这可能在phonegap中吗?我能够读取,写入,删除文件.但是如何删除文件的争议?
你可以使用Truncate.
如果你之后要写,那会更复杂一些.你不能只是
writer.truncate(0);
writer.write("Leo was here");
Run Code Online (Sandbox Code Playgroud)
如果你这样做似乎既不起作用,但每个人都单独工作.因此,为了使其工作,您必须等到截断完成后才能执行写操作.在截断的onwriteend中添加写入.注意清除或更改onwwriteend很重要,否则你将获得无限循环.
因此,首先获取文件系统并使用文件系统来获取文件条目
function clearFile(fileName){
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSystem){
fileSystem.root.getFile(fileName, { create: false }, clearfileExists, fileDoesNotExist);
}, getFSFail);
}
Run Code Online (Sandbox Code Playgroud)
假设您有一个文件条目(文件存在),然后创建文件编写器.
function clearfileExists(fileEntry){
console.log("File " + fileEntry.fullPath + " exists!");
fileEntry.createWriter(truncateFile, fileDoesNotExist);
}
Run Code Online (Sandbox Code Playgroud)
现在你有了一个文件编写器.调用truncate(0)并在onwriteend中清除onwrite结束并写下你想要的内容.
function truncateFile(writer){
console.log("truncate");
writer.onwriteend= function(evt) {
LOG("write");
writer.seek(0);
writer.onwriteend = function(evt){
console.log("contents of file now 'Leo was Here'");
}
writer.write("Leo was Here");
}
writer.truncate(0);
}
Run Code Online (Sandbox Code Playgroud)
并且为了完整性,这里是错误案例的处理
function fileDoesNotExist(){
console.log("file does not exist");
}
function getFSFail(evt) {
console.log(evt.target.error.code);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1617 次 |
| 最近记录: |