【问题标题】:Detect file type uploaded in discord.net检测在 discord.net 中上传的文件类型
【发布时间】:2019-07-14 07:13:55
【问题描述】:

我正在使用 Discord.Net 库在 C# 中编写一个 Discord 机器人。我有一个工作机器人,它会扫描消息并删除包含文本“gif”“giphy”等的消息。这会删除 Discord 自动嵌入的所有 gif 链接。但是,没有检测到直接上传的 .gif 文件。

我想要一种方法,当文件上传到 Discord 文本频道时,接收该文件的类型,最好是字符串格式,如“txt”或“png”等。

【问题讨论】:

  • 您是否检查了 Attachment#Url 属性?
  • @Still 我该怎么做呢?我尝试过使用 Context.Message.Attachments、Message.Attatchments 和 MessageParam.Attatchments,但无论我发布文本消息、图像或其他文件,它总是返回相同的内容:System.Collections.Immutable.ImmutableArray'1[Discord.Attachment] Where Context = new SocketCommandContext(Client, Message); 和消息 = MessageParam as SocketUserMessage;
  • 因为它是一个集合;你不 ToString 一个集合。

标签: c# discord discord.net


【解决方案1】:

假设你的消息是SocketMessage

您可以通过yourSocketMessage.Attachments 获取此邮件中存在的附件集合,如果没有附加任何内容,则集合中不会有任何内容。

您可以遍历该集合,它应该返回一个AttachmentAttachment 有一个 Url 属性,您可以将其与 System.IO.Path.GetExtension(url) 一起使用
(奇怪的是,函数一直是proven that it works with url

【讨论】:

    猜你喜欢
    • 2011-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-10
    • 2014-02-20
    • 1970-01-01
    • 2010-09-23
    • 2012-01-29
    相关资源
    最近更新 更多