这是关于我的问题 - Attach content of HTML5 WebSQL databse to email using javascript
我有一个可在Chrome浏览器中运行的HTML5应用。我需要导出本地存储在Web SQL DB中的数据并将其放入csv或txt文件中。
我需要在浏览器中执行此操作。服务器端代码不是一个选项。怎么能用javascript做到这一点?感谢
编辑: 我发现实现这一目标的一种方法是通过数据URI。所以我在结果对象的select查询中得到了我的结果集。如何将其编码为基本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>
答案 0 :(得分:0)
当我找到解决方案时,我正在回答我自己的问题。
我从查询结果集创建了一个字符串,并使用btoa()
api将字符串转换为base64编码。