我正在尝试建立一个 channel ,用户可以通过命令更新机器人消息。该 channel 的工作方式如下:如果 X 发送 + Item
,机器人会将“Item”添加到链接到用户的数组中,稍后将其写入文件中。为了构建消息,机器人读取文件并写入与用户相关的数组元素。如何使数组以某种方式链接到用户(例如通过 id),以便我可以读取它?
感谢您的帮助
最佳答案
如果您不知道,您可以通过 message.author.id
获取发件人的 ID,其中 message
是 Message
对象。
您可以找到一些 Node API 来帮助您实现这一点。
否则,您只需创建一个字典,以用户 ID 作为键值。您可以查看here或here .
(其中任何一个都可以。这也可以提供帮助: clickme! ,或者您可以通过谷歌搜索了解更多信息。)
存储到文本文件中并维护数据要困难得多。如果您能找到一些可以为您简化流程的 API,那就太好了。
但如果有替代方案,您可以将数据存储到文本文件中,就像字符串存储在程序中一样。 (查看有关如何存储和读取字符串的数据结构。)
基本上,假设您有 2 个用户,每个用户有 2 个元素。文本文件中的数据将如下所示:
user1-ID
element1
element2
NULL-VALUE
user2-ID
element1
element2
NULL-VALUE
基本上,每当您想从文本文件中读取数据时,只需告诉您的程序搜索相应的 UserID,然后向下读取元素,直到达到 NULL-VALUE
。一旦到达那里,您的程序就会停止读取它。
(当然,您可以使用 NULL-VALUE
以外的其他内容,这是一个示例。我建议将您的元素括在括号中。因为某些用户可能会输入 NULL-VALUE
在命令争论中,这会造成一些麻烦。)
关于javascript - 如何在文件中存储有关用户的信息,然后读取和修改它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46476563/