【问题标题】:How to Insert Text File Line by Line into Web SQL Database如何将文本文件逐行插入 Web SQL 数据库
【发布时间】:2016-03-30 16:38:40
【问题描述】:

所以我正在努力让它发挥作用。我有一个我正在使用的文本文件,以便用户可以从 web sql 数据库备份他或她的一些数据,这工作正常。但是,我需要它以便他们可以将文本文件上传回站点,并将该文件的内容插入回 web sql 数据库。到目前为止,这是我的一些代码:

window.onload = function() { var fileInput = document.getElementById('fileInput');

    fileInput.addEventListener('change', function () {
        var file = fileInput.files[0];
        var textType = /text.*/;

        if (file.type.match(textType)) {
            var reader = new FileReader();

            reader.onload = function(progressEvent) {
                var mydata = reader.result.split('\n');

      for(var i = 0; i < mydata.length; i++) {
      mydb.transaction(function (u) {
        u.executeSql("INSERT INTO link_table (make, model) VALUES (?, ?)", [mydata, mydata]);
        outputCars();
      });
    }
            };
    reader.readAsText(file);
        }
    });

};

此代码将整个文本文件插入到数据库的一个表格单元格中。所以,如果我有这个文本文件:

www.google.com
www.bing.com

它将两个 url 放在列的一个单元格中。我希望它能够逐行读取文本文件并将每一行插入到数据库的新列中。任何帮助将不胜感激,唯一的要求是必须在所有客户端完成。所以没有 PHP 或类似的东西。谢谢!

【问题讨论】:

  • 猜你应该在循环中的某个地方使用 mydata[i]...
  • +seth flowers 我试过了,它确实为信息创建列,唯一的问题是它在每个单元格中插入 UNDEFINED 而不是文本数据。

标签: javascript html web-sql


【解决方案1】:

在此处更改您的代码:

 reader.onload = function(progressEvent) {

 var lines = reader.result.split('\n');
 for(var line = 0; line < lines.length; line++){
  alert(lines[line]);
 }
 };

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多