【问题标题】:HTML5 - Export Web SQL database to a csv or txt fileHTML5 - 将 Web SQL 数据库导出到 csv 或 txt 文件
【发布时间】:2012-12-19 14:41:19
【问题描述】:

这是参考我的问题 - Attach content of HTML5 WebSQL databse to email using javascript

我有一个可以在 Chrome 浏览器中运行的 HTML5 应用程序。我需要导出本地存储在 Web SQL DB 中的数据,并将其放入 csv 或 txt 文件中。

我需要在浏览器中执行此操作。服务器端代码不是一个选项。如何使用 javascript 来完成?谢谢

编辑: 我发现实现这一点的一种方法是通过 Data URI。所以我从结果对象中的选择查询中获得了我的结果集。如何将其编码为 base 64 格式?

       db.transaction(function (tx) {
       tx.executeSql('SELECT * FROM LOGS', [], function (tx, results) {
       var len = results.rows.length, i;
       msg = "<p>Found rows: " + len + "</p>";
       document.querySelector('#status').innerHTML +=  msg;
       for (i = 0; i < len; i++){
          alert(results.rows.item(i).log );
       }
     }, null);
    });

    //Encode the results object to base64
    /* How can we do this? */

     <a download="example.csv" href="data:application/csv;charset=utf-8, <<base64_encoded_data>>">Test</a>

【问题讨论】:

  • 我之前没用过WebSQL,所以这部分我帮不上忙,但是如果你能把你的数据放入一个数组中,其中数组的每个元素都是一个数组,表示数据库中的一行,您可以使用我的CSV library 将其格式化为 CSV。只需包含该库,然后通过 CSV.arrayToCsv(); 运行您的数组即可接收 CSV 格式的数组。

标签: javascript html export local-storage web-sql


【解决方案1】:

我正在回答我自己的问题,因为我想出了一个解决方案。

我从查询结果集中创建了一个字符串,并使用btoa() api 将字符串转换为base64 编码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-24
    • 1970-01-01
    • 1970-01-01
    • 2013-09-10
    • 1970-01-01
    • 2022-07-06
    • 2019-01-11
    • 2020-03-29
    相关资源
    最近更新 更多