MiraiForum

    • Register
    • Login
    • Search
    • Popular
    • Recent
    • Unsolved
    • Tags
    • Groups
    • 友情链接

    怎么游历群文件的子文件夹

    开发交流
    3
    10
    708
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • W
      wuxianggujun last edited by wuxianggujun

      我已经实现了遍历群文件,但是群文件下的子文件夹不知道怎么遍历。我是kt新手。代码你们看看怎么获取子文件夹

      if (event.message.contentToString() == "群文件") {
                 //获取该目录下所有文件和子目录列表.
                 val absoluteFileFolders: Flow<AbsoluteFileFolder> = event.group.files.root.children()
                 absoluteFileFolders.collect {
                     println("为什么给我打印两次啊")
                     if (it.isFile) {
                             println("文件名:${it.name}")
                     }
                 }
      
      
             }
      
      1 Reply Last reply Reply Quote 0
      • tsudzuki
        tsudzuki 摸鱼 last edited by

        使用游历器拜读q群文件即可

        W 1 Reply Last reply Reply Quote 0
        • Orisland
          Orisland 摸鱼 last edited by

          虽然但是
          ee2848ec-cf3c-4e37-aaef-1b086fd914d8-image.png

          W 1 Reply Last reply Reply Quote 0
          • W
            wuxianggujun @tsudzuki last edited by

            @tsudzuki 拜读是什么

            tsudzuki 1 Reply Last reply Reply Quote 0
            • W
              wuxianggujun @Orisland last edited by

              @Orisland 额

              1 Reply Last reply Reply Quote 0
              • W
                wuxianggujun last edited by

                我分别遍历文件夹和文件添加到列表,已经实现了

                1 Reply Last reply Reply Quote 0
                • W
                  wuxianggujun last edited by wuxianggujun

                  我是萌新,借鉴了大佬的Java项目,给了我思路。
                  我一直纠结于
                  /**
                  * 获取该目录下所有文件和子目录列表.
                  */
                  public suspend fun children(): Flow<AbsoluteFileFolder>
                  获取文件夹和文件。然后判断是不是文件夹,但是我不知道怎么进入文件夹里遍历

                  suspend fun getGroupAllFiles(uBot: Bot, gId: Long): MutableList<String>? {
                         if (mList.isNotEmpty()) mList.clear()
                         try {
                             val bot: Bot = uBot
                             val group: Group = bot.getGroup(gId) ?: return throw GroupObjectNull("机器人不在此群聊!")
                             // 该函数会遍历上级目录的所有文件并匹配当前文件, 因此可能会非常慢, 请不要频繁使用
                             group.files.root.refreshed()
                             val remoteFiles: RemoteFiles = group.files
                             remoteFiles.root.files().collect {
                                 mList.add(it.name)
                             }
                             remoteFiles.root.folders().collect {
                                 it.files().collect { asf: AbsoluteFile ->
                                     mList.add(asf.name)
                                 }
                             }
                             return mList
                         } catch (e: Exception) {
                             println(e.cause)
                             //logger.error { e.cause }
                         }
                         return null
                     }
                  
                  
                  
                  1 Reply Last reply Reply Quote 0
                  • tsudzuki
                    tsudzuki 摸鱼 @wuxianggujun last edited by

                    @wuxianggujun 嘻嘻

                    W 1 Reply Last reply Reply Quote 0
                    • W
                      wuxianggujun @tsudzuki last edited by

                      @tsudzuki 怎么读取yaml文件

                      W 1 Reply Last reply Reply Quote 0
                      • W
                        wuxianggujun @wuxianggujun last edited by

                        @wuxianggujun 我已经回了

                        1 Reply Last reply Reply Quote 0
                        • 1 / 1
                        • First post
                          Last post
                        Powered by Mamoe Technologies & NodeBB | 友情链接 | 服务监控 | Contact