使用 javascript 将多个文件读取为字符串

Read multiple files to string with javascript

我的应用程序读取服务器上的特定 .txt 文件并将内容写入字符串(数组)

filename = "textfile01.txt"
$.get(filename, function(datafil) {
    var bookings = datafil.split("\n");

    //Display
    $("#divname").append(bookings);

});

效果很好,但我想将该目录中所有文本文件的内容添加到我的数组中。 我想使用正则表达式,但我不知道如何应用它们。类似于 "load all /textfile\d\d\.txt/files in the datafil string".

所以我可以加载 textfile01.txt、textfile02.txt 等等。

谢谢!

客户端无权访问目录的文件列表。这使得无法 'directly' 获取可能要下载的文件列表。

如果您保持一致的文件名协议(如 textfile01.txt、textfile02.txt 等...),您可以轻松地通过循环向上计数。

var totalFiles = 99;
for (var i = 0; i < totalFiles; i++){
    var number = (i < 10) ? '0' + i : i;
    var filename = "textfile" + number + ".txt";

    $.get(filename, function(datafil) {
        var bookings = datafil.split("\n");

        // Display
        $("#divname").append(bookings);
    });
}

或者,如果您更愿意使用每个文件都以不同方式命名的文件,一个包含文件名的简单数组就足够了。

var files = ["hello.txt", "world.txt"];
files.forEach(function(file, index){
    $.get(file, function(datafil) {
        var bookings = datafil.split("\n");

        // Display
        $("#divname").append(bookings);
    });
 });

请注意,$.get() 函数将几乎同时调用,这意味着不能保证文件内容将以相同的顺序附加到#divname。