Javascript 如何使用类固醇js中的File Writer对象写入本地JSON文件?
我正在用类固醇JS构建一个应用程序,我希望能够覆盖本地JSON文件的内容,我的应用程序在启动时从中获取数据。我认为File Writer对象是我完成这项任务所需要的,但是我不太确定这一点,我不太确定如何使用它专门写入我在www/MyApp.JSON下的本地JSON文件 有关文件编写器的信息: 细节 FileWriter对象提供了一种将UTF-8编码文件写入设备文件系统的方法。应用程序响应writestart、progress、write、writeend、error和abort事件 每个FileWriter对应于一个文件,可以多次向其中写入数据。FileWriter维护文件的位置和长度属性,允许应用程序查找和写入文件中的任何位置。默认情况下,FileWriter写入文件的开头,覆盖现有数据。在FileWriter的构造函数中将可选的append boolean设置为true,以写入文件末尾 下面列出的所有平台都支持文本数据。文本在写入文件系统之前被编码为UTF-8。一些平台还支持二进制数据,可以作为ArrayBuffer或Blob传入Javascript 如何使用类固醇js中的File Writer对象写入本地JSON文件?,javascript,jquery,Javascript,Jquery,我正在用类固醇JS构建一个应用程序,我希望能够覆盖本地JSON文件的内容,我的应用程序在启动时从中获取数据。我认为File Writer对象是我完成这项任务所需要的,但是我不太确定这一点,我不太确定如何使用它专门写入我在www/MyApp.JSON下的本地JSON文件 有关文件编写器的信息: 细节 FileWriter对象提供了一种将UTF-8编码文件写入设备文件系统的方法。应用程序响应writestart、progress、write、writeend、error和abort事件 每个File
<!DOCTYPE html>
<html>
<head>
<title>FileReader Example</title>
<script type="text/javascript" charset="utf-8" src="cordova-1.8.0.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for Cordova to load
//
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}
// Cordova is ready
//
function onDeviceReady() {
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
}
function gotFS(fileSystem) {
fileSystem.root.getFile("readme.txt", null, gotFileEntry, fail);
}
function gotFileEntry(fileEntry) {
fileEntry.file(gotFile, fail);
}
function gotFile(file){
readDataUrl(file);
readAsText(file);
}
function readDataUrl(file) {
var reader = new FileReader();
reader.onloadend = function(evt) {
console.log("Read as data URL");
console.log(evt.target.result);
};
reader.readAsDataURL(file);
}
function readAsText(file) {
var reader = new FileReader();
reader.onloadend = function(evt) {
console.log("Read as text");
console.log(evt.target.result);
};
reader.readAsText(file);
}
function fail(evt) {
console.log(evt.target.error.code);
}
</script>
</head>
<body>
<h1>Example</h1>
<p>Read File</p>
</body>
</html>
文件阅读器示例
//等待Cordova加载
//
函数onLoad(){
文件。添加的监听器(“deviceready”,OnDeviceraddy,false);
}
//科尔多瓦准备好了
//
函数ondevicerady(){
requestFileSystem(LocalFileSystem.PERSISTENT,0,gotFS,fail);
}
函数gotFS(文件系统){
getFile(“readme.txt”,null,gotFileEntry,fail);
}
函数gotFileEntry(fileEntry){
fileEntry.file(gotFile,fail);
}
函数gotFile(文件){
readDataUrl(文件);
readAsText(文件);
}
函数readDataUrl(文件){
var reader=new FileReader();
reader.onloadend=函数(evt){
log(“读取为数据URL”);
日志(evt.target.result);
};
reader.readAsDataURL(文件);
}
函数readAsText(文件){
var reader=new FileReader();
reader.onloadend=函数(evt){
console.log(“读取为文本”);
日志(evt.target.result);
};
reader.readAsText(文件);
}
功能失效(evt){
log(evt.target.error.code);
}
例子
读取文件