0

我正在尝试使用循环将至少 10 行写入文件以使用 PhoneGap 在文件中附加多行,但每次我在下面运行此代码时,只能将 1 行作为换行符添加到文件中。但是在 10 次迭代中没有打印 10 行。请建议我如何使用 phoneGap javascript 纠正我的问题。

function gotFileWriter(writer) {

                    for (var z = 0; z<= 10; z++) {

                        console.log("normal write success");

                        writer.onwrite = function(evt) {

                            console.log("write success");
                        };


                        writer.onwriteend = function(evt) {

                            console.log("write end");
                        }

                        writer.seek(writer.length);
                        writer.write("id,updated,created,fname,lname,company,tags,type,label,value,source,sourceid\r\n");
                        writer.abort();    // I tried even commenting
                    }
}
4

3 回答 3

0

您可以使用它来将文本附加到文件而不是循环

function gotFileWriter(writer) {
    writer.seek(writer.length);
    writer.write(" - append- \n");
}
于 2014-10-20T05:28:01.383 回答
0

这对我有用

构建一个大字符串:

function gotFileWriter(writer)
{
  var bigString = '';
  for (var i=0; i<numberOfLines; i++)
  {
    bigString += line[i];
    bigString += '\r\n';
  }
...

然后对文件进行大量写入:

...
  writer.onwrite = function (evt) { ... };
  writer.onwriteend = function (evt) { ... };
  writer.seek(writer.length);
  writer.write (bigString);
}
于 2013-04-28T06:30:31.870 回答
0

你试过这个吗?

function gotFileWriter(writer) {

    console.log("normal write success");

    writer.onwrite = function(evt) {
        console.log("write success");
    };


    writer.onwriteend = function(evt) {
        console.log("write end");
    }


    for (var z = 0; z< 10; z++) {

        writer.seek(writer.length);
        writer.write("id,updated,created,fname,lname,company,tags,type,label,value,source,sourceid\r\n");
        writer.abort();    // I tried even commenting
    }
}
于 2013-04-25T08:57:03.977 回答