【问题标题】:How do you read/parse a text file line by line using html/javascript?如何使用 html/javascript 逐行读取/解析文本文件?
【发布时间】:2012-04-12 14:52:42
【问题描述】:

我正在尝试解析一个包含一堆测试问题/答案的文本文件,以编写多选题考生的代码。

问题和答案都在不同的行上,所以我需要逐行读取每个文件,并通过仅使用 html/javascript/jquery 以某种方式对其进行解析。

我该怎么做?谢谢!

文本文件的扩展名为 .dat,但实际上是一个文本文件。它只是这些进来的格式,有太多要改变的...... http://www.mediafire.com/?17bggsa47u4ukmx

【问题讨论】:

  • 请张贴文本文件的样本。为什么不使用 json 或 XML?

标签: javascript html file file-io


【解决方案1】:

试试这个

function readQAfile(filename){
    $.ajax(filename,
        {
            success: function(file){
                var lines = file.split('\n');
                var questions = [];

                var length = lines.length;
                for(var i = 0; i < length; i+=2){
                    questions.push({
                        question: lines[i],
                        answer: lines[i+1] || "no answer"
                    })
                }
                window.questions = questions;
            }
        }
    );
}

要使用它,您需要在服务器上运行网站(本地服务器很好)。

【讨论】:

  • 我知道这是一个非常古老的答案,但我想知道你是否可以善良并为代码添加一些示例/演示......
【解决方案2】:

要开始尝试使用正则表达式。

以下表达式将在每个 $$[number] 场合拆分您的文本。从那里你可以暴力切片并进一步切割和切断你的字符串。

示例代码:

var regex = /(\$\$\d+)/g;
var str = "adasda$$1adadad$$23adsads\nadad\nadad$$3";

console.log(str.split(regex));

["", "$$1", "adad sad", "$$23", "asdad", "$$3", ""]

【讨论】:

    猜你喜欢
    • 2014-06-13
    • 2012-07-16
    • 1970-01-01
    • 1970-01-01
    • 2022-11-05
    • 1970-01-01
    • 2014-09-11
    • 1970-01-01
    • 2011-08-17
    相关资源
    最近更新 更多