首页 > 解决方案 > 如何将离线文本单词列表中的数据加载到字符串中?

问题描述

开发一个检查 HTML 文档以查看它们是否包含特定单词的应用程序。fs.readFileSync用于读取 HTML,然后用于将fs.writeFile其写入文本文档。然后检查文本文档以查看它是否包含定义的单词。

代码中定义的word list id的方式是:

var words = ./wordlist.txt

如果在变量中单独定义单词,它可以正常工作,例如

var words = "stack", "cats", "dogs"

但是如果从格式如下的文本文件中读取它们

"stack", "cats", "dogs"

它停止工作并返回一个字符串,说明找不到单词。

我阅读单词列表文件的方式是这样的:

var posWord = "./wordlist.txt";
var positiveWords = fs.readFileSync(posWord, 'utf8', function(err) {
    if (err) {
        console.log("There was an error in reading the Positive Word list, refer to wordFunc()")
    }
});

console.log(positiveWords), 给出正确格式的整个单词列表

标签: javascriptarraysnode.jsstring

解决方案


当您尝试从 .txt 文件中读取它们时,它将作为代表行的字符串返回,而不是您预期的数组所以您必须使用 split() 函数将其转换为数组

var posWord = "./wordlist.txt";
var positiveWords = fs.readFileSync(posWord, 'utf8',   function (err) {
if (err) {console.log("There was an error in reading the Positive Word list, refer to wordFunc()")}})
Words=posWord.split(',');

推荐阅读