2

这是参考我的问题-使用 javascript 将 HTML5 WebSQL 数据库的内容附加到电子邮件

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

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

编辑:我发现实现这一目标的一种方法是通过数据 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>
4

1 回答 1

0

当我找到解决方案时,我正在回答我自己的问题。

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

于 2012-12-05T11:25:17.390 回答