如何解决从 Cordova/Inappbrowser 创建并保存文件
我在使用 Acode 的 Cordova inappbrowser 应用程序上运行自定义 HTML。
我可以通过 numpy
和 fetch
将文本文件的内容加载到我可以修改的文本区域中。现在我想将修改后的内容保存回文件(或另一个文件,如果不可能)。
我已经尝试过很多这样的建议答案:
FileReader
或者这个:
let a = document.createElement('a');
a.href = "data:text/plain;charset=utf-8," + encodeURIComponent("some text");
a.download = 'name.txt';
a.click()
但它们都不起作用。
因为这些脚本在我的默认 android 浏览器中工作,所以我想以另一种方式进行下载:发送请求以在默认浏览器中打开一个链接/blob,然后让这个默认浏览器进行下载。所以我尝试了这个:
var blob = new Blob(["some text"],{
"type": "text/plain"
});
var a = document.createElement("a");
a.download = "name.txt";
a.href = (window.URL || window.webkitURL || window || {}).createObjectURL(blob);
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
但是这里又不起作用了。此外,如果我在 html 中对此进行硬编码: var blob = new Blob(["aaaa"],{
type: 'text/plain'
});
var blobUrl = URL.createObjectURL(blob);
window.open(blobUrl,'_system','location=yes');
链接实际上是在cordova inappbrowser 中而不是在外部默认浏览器中打开的。
知道如何创建文件吗?
我尝试了另外两个类似的应用 Trebedit 和 Spck Editor,但两者都遇到了同样的问题。
另外,我发现了一种使其在 Acode 中工作的方法,但它不适合我的需要:在 Acode 的设置中,我可以选择使用浏览器而不是 inappbrowser 进行预览(但我需要使用 inappbrowser) . 使用浏览器,文件下载工作正常,但再次,我不能那样使用它。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。