| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- function setFileStorage(path, seek, writeData) {
- return new Promise((resolve, reject) => {
- plus.io.requestFileSystem(plus.io.PUBLIC_DOCUMENTS, fs => {
- fs.root.getFile(path, {
- create: true
- }, fileEntry => {
- fileEntry.file(file => {
- fileEntry.createWriter(writer => {
- plus.nativeUI.showWaiting("正在保存文件信息,请勿操作!");
- writer.seek(seek);
- const writeDataTemp = JSON.stringify(writeData, null,
- "\r").replace(/[\r]/g, "");
- writer.write(writeDataTemp);
- writer.onerror = function() {
- plus.nativeUI.closeWaiting();
- plus.nativeUI.toast("保存失败, 请重新操作", {
- background: "rgba(255, 255, 255, 0.6)",
- });
- reject("保存失败, 请重新操作");
- }
- writer.onwrite = function() {
- plus.nativeUI.closeWaiting();
- plus.nativeUI.toast("文件已保存", {
- background: "rgba(255, 255, 255, 0.6)",
- });
- }
- }, e => {
- plus.nativeUI.toast("启动文件保存流失败,请检查android版本!", {
- background: "rgba(255, 255, 255, 0.6)",
- });
- reject(e);
- })
- })
- }, e => {
- plus.nativeUI.toast("文件获取失败,请检查应用权限!", {
- background: "rgba(255, 255, 255, 0.6)",
- });
- reject(e);
- })
- })
- })
- }
- function getFileStorage(path) {
- return new Promise((resolve, reject) => {
- plus.io.requestFileSystem(plus.io.PUBLIC_DOCUMENTS, fs => {
- fs.root.getFile(path, {
- create: false
- }, fileEntry => {
- fileEntry.file(function(file) {
- let fileReader = new plus.io.FileReader();
- fileReader.readAsText(file, "utf-8");
- fileReader.onerror = e => {
- // plus.nativeUI.toast("获取文件失败 " + e, {
- // background: "rgba(255, 255, 255, 0.6)",
- // });
- reject("获取文件失败");
- };
- fileReader.onload = e => {
- resolve(e.target.result);
- };
- // plus.nativeUI.confirm("检测到本地存在已保存的服务器数据" + file.size +
- // "byte,是否读取?", ret => {
- // if (ret?.index == 0) {
- // let fileReader = new plus.io.FileReader();
- // fileReader.readAsText(file, "utf-8");
- // fileReader.onerror = e => {
- // plus.nativeUI.toast("获取文件失败 " + e, {
- // background: "rgba(255, 255, 255, 0.6)",
- // });
- // reject("获取文件失败");
- // };
- // fileReader.onload = e => {
- // resolve(e.target.result);
- // };
- // } else {
- // resolve(null);
- // }
- // })
- });
- }, e => {
- plus.nativeUI.toast("文件获取失败,请检查应用权限!", {
- background: "rgba(255, 255, 255, 0.6)",
- });
- reject(e);
- })
- })
- })
- }
- export {
- setFileStorage,
- getFileStorage
- }
|