Discord Bot阅读单行,然后将其删除

问题描述 投票:0回答:1

我正在构建一个将值存储在.txt文件中的机器人,每行一个代码。现在,我只想获取txt文件的一行,然后删除该行。

它不起作用,我不知道如何删除一行然后写一个新文件

bot.on("message", message=>{

    let args = message.content.substring(prefix.length).split(" ");



    switch(args[0]){

         case "code": 
         let codetext = message.content.replace(prefix + "code", "")

        fs.appendFile("./text.txt", codetext + "\n",(err)=>{
            if (err) throw err;
                  message.channel.send("message written")
          })
        break;
        case "getcode":

        let getcode = fs.readFileSync("./text.txt", "utf8", (err)=>{
            if (err) throw err;
        })
        var code_array = getcode.split("\n")
        message.channel.send(code_array[0])

        }    
    });
javascript discord.js fs
1个回答
0
投票

您已经制作了一个数组,因此您只需要删除要删除的元素,然后重写剩下的文件,覆盖旧文件即可。有几种方法可以执行此操作,以下所有操作都会更改原始数组:

删除最后一个元素并返回已删除的内容。

let popped = code_array.pop()

删除第一个元素并返回已删除的内容。

let shifted = code_array.shift()

删除从元素索引2开始的3个项目(第三个元素,它从0开始!),并返回删除的数组。

let spliced = code_array.splice(2, 3);
© www.soinside.com 2019 - 2024. All rights reserved.