【发布时间】:2020-07-16 16:02:22
【问题描述】:
我有这个脚本,我在一个名为 discord bot maker 的程序中运行它。我试图让机器人在 txt 文件中搜索一个单词,然后删除这个单词并保存文件:
let fs = require('fs');
let a = tempVars('a');
let b = tempVars('carte');
fs.readFile(`resources/${a}.txt`, { encoding: 'utf-8' }, (err, data) => {
if (err) throw err;
let dataArray = data.split('\n'); // convert file data in an array
const searchKeyword = `${b}`; // we are looking for a line, contains, key word 'user1' in the file
const key = dataArray.filter((arr) => arr.includes(searchKeyword));
const index = key.length >= 1 && dataArray.indexOf(key[0]);
if (index > -1) dataArray.splice(index, 1);
// UPDATE FILE WITH NEW DATA
// IN CASE YOU WANT TO UPDATE THE CONTENT IN YOUR FILE
// THIS WILL REMOVE THE LINE CONTAINS 'user1' IN YOUR shuffle.txt FILE
const updatedData = dataArray.join('\n');
fs.writeFile(`resources/${a}.txt`, updatedData, (writeErr) => {
if (writeErr) throw err;
console.log('Successfully updated the file data');
});
});
tempVars("xx") 变量是由一个名为 discord bot maker 的程序给出的,所以没有问题。 我的问题是当txt文件中不存在var“b”(谁是discord命令的参数)时,脚本会删除文件中的第一个单词!
如何向此脚本添加条件(如果文件中不存在 b,则停止脚本并返回消息)
非常感谢你们!祝你有美好的一天
【问题讨论】:
标签: javascript file