一、封裝操作文件io.js
export default {
storage(addr,data) {
plus.io.requestFileSystem(
plus.io.PUBLIC_DOCUMENTS, // 程序公用文檔目錄常量
fs => {
// 創(chuàng)建或打開文件, fs.root是根目錄操作對(duì)象,直接fs表示當(dāng)前操作對(duì)象
fs.root.getFile(
addr, {
create: true // 文件不存在則創(chuàng)建
},
fileEntry => {
// 文件在手機(jī)中的路徑
//console.log(fileEntry.fullPath)
fileEntry.createWriter(writer => {
// 寫入文件成功完成的回調(diào)函數(shù)
writer.onwrite = e => {
console.log('寫入成功');
};
// 向文件中寫入數(shù)據(jù)
writer.write(
JSON.stringify(data)
);
});
},
e => {
console.log('getFile failed: ' + e.message);
}
);
},
e => {
console.log(e.message);
}
);
},
read(addr) {
let that = this;
return new Promise((resolve, reject) => {
plus.io.requestFileSystem(
plus.io.PUBLIC_DOCUMENTS,
fs => {
fs.root.getFile(
addr, {
create: false
},
fileEntry => {
fileEntry.file(function(file) {
console.log('文件大小:' + file.size + '-- 文件名:' + file.name);
//創(chuàng)建讀取文件對(duì)象
let fileReader = new plus.io.FileReader();
//以文本格式讀取文件數(shù)據(jù)內(nèi)容
fileReader.readAsText(file, 'utf-8');
//文件讀取操作完成時(shí)的回調(diào)函數(shù)
fileReader.onloadend = function(evt) {
resolve(evt.target.result)
//console.log("提取的服務(wù)器地址:", sURL);
};
});
},
e => {
reject(e)
console.log(e)
}
);
},
e => {
reject(e);
console.log(e.message);
}
);
})
}
}
二、使用
在需要使用的地方引入該文件。文章來源地址http://www.zghlxwxcb.cn/news/detail-529242.html
IO.read("文件名稱.json").then(res => {
// res 讀取的文件內(nèi)容
}).catch(err => {
// 找不到該文件就寫入一個(gè)空白文件。
IO.storage("名稱.json", [])
console.log(err, "err")
})
文章來源:http://www.zghlxwxcb.cn/news/detail-529242.html
到了這里,關(guān)于uniapp安卓本地寫入讀取文件的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!