假设我有一个名为test.txt的文本文件,其内容如下:

Apples.Purchased: 100
Oranges.Purchased: 202
Bananas.Purchased: 140


如何在文本文件中搜索“ Oranges.Purchased”,获取其背后的数值并将其应用于javascript变量?

作为记录,我使用fs.write保存数据:

var fs = require('fs');
fs.writeFile("test.txt", outputdata, function(err) {
        if(err) {
        console.log(err);
        } else {
            console.log("The file was saved!");
        }
});

最佳答案

您可以将文件读为文本,然后使用正则表达式查找文本:

fs.readFile("test.txt", function(err, data){
  var regex = /^Oranges.Purchased: ([0-9]+)/;
  var result = regex.exec(data);
  console.log(result[1]);
});


尽管您想对此进行防弹(检查错误,不要仅仅假设您已找到文本,等等)。

但是我一般不推荐这种方法。为什么不将文件写为JSON:

{
  "Apples": {
    "Purchased": 100
  },
  "Oranges": {
    "Purchased": 140
  }
  "Bananas": {
    "Purchased": 202
  }
}


无需任何字符串冲突即可生成和解析的代码;您可以序列化您的对象。

关于javascript - Javascript:如何从文本文件的特定部分加载数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14043193/

10-10 22:51