首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用c#将Torrent Magnet链接转换为.torrent文件

使用c#将Torrent Magnet链接转换为.torrent文件
EN

Stack Overflow用户
提问于 2015-12-22 04:56:14
回答 1查看 3K关注 0票数 0

有办法做到这一点吗?我已经尝试了monotorrent,但由于缺乏最新的文档,我无法让它工作。我已经在monotorrent上尝试了this,但是我仍然找不到获取.torrent文件的方法,甚至无法开始下载来获取.torrent……

下面的代码以that question作为基础,但它没有将任何内容保存到"D:\A“或"D:\TorrentSave”

代码语言:javascript
复制
    private void GerarTorrent(string magnet)
    {
        MonoTorrent.Client.TorrentManager b = new MonoTorrent.Client.TorrentManager(new MonoTorrent.MagnetLink(magnet), "D:\\A", new MonoTorrent.Client.TorrentSettings(), "D:\\TorrentSave");
        MonoTorrent.Client.EngineSettings engineSettings = new MonoTorrent.Client.EngineSettings();
        MonoTorrent.Client.ClientEngine clientEngine = new MonoTorrent.Client.ClientEngine(engineSettings);
        clientEngine.Register(b);
        clientEngine.StartAll();
        b.Start();
    }

为了生成.torrent,它不一定是单流的,事实上,这个api的唯一用途就是从磁铁链接生成.torrent文件……

编辑:更新了代码,我尝试按照FᴀʀʜᴀɴAɴᴀᴍ说的做:

代码语言:javascript
复制
    private void GerarTorrent(string hash)
    {
        MonoTorrent.Client.TorrentManager b = new MonoTorrent.Client.TorrentManager(MonoTorrent.InfoHash.FromHex(hash), "D:\\A", new MonoTorrent.Client.TorrentSettings(), "D:\\TorrentSave", new List<List<string>>());
        MonoTorrent.Client.EngineSettings engineSettings = new MonoTorrent.Client.EngineSettings();
        MonoTorrent.Client.ClientEngine clientEngine = new MonoTorrent.Client.ClientEngine(engineSettings);
        clientEngine.Register(b);
        clientEngine.StartAll();
        b.Start();
    }

使用的哈希= "5FC86BA08451CF4221E0091F31AF1A52C2219009“

EN

回答 1

Stack Overflow用户

发布于 2015-12-22 05:00:35

您只需要将散列而不是整个磁铁链接传递给TorrentManager构造函数。

磁铁链接看起来像这样:

代码语言:javascript
复制
magnet:?xt=urn:btih:18981bc9759950b4715ad46adcaf514e6a773cfe

因此,更普遍的形式是:

代码语言:javascript
复制
magnet:?xt=urn:btih:<hash>

您需要提取此<hash>并将其传递给构造函数:

代码语言:javascript
复制
manager = new TorrentManager(InfoHash.FromHex(hash), downloadsPath, torrentDefaults, downloadsPathForTorrent, new List<List<string>>());
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34404177

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档