【发布时间】:2015-11-11 02:16:34
【问题描述】:
您好,我正在使用 C# 在 VS15 中制作控制台应用程序。
如何解码 torrent 文件?要获取 torrent 文件的名称、大小和日期?我想从服务器下载一个 torrent 文件,然后对其进行解码以查看名称、大小和日期。到目前为止,我可以使用 WebCLient 下载文件,但我已经搜索并搜索如何解码 torrent 文件,但没有运气。
我试过this library 并做到了:
using (var fs = File.OpenRead("Ubuntu.torrent"))
{
BDictionary bdictionary = Bencode.DecodeDictionary(fs);
}
但我不太明白字典给了我什么?我想在控制台中输出种子信息。
【问题讨论】:
-
在您链接的同一页面上,您有大量有关如何使用它的示例。只需查看您获得的数据,您应该很清楚如何做您想做的事情。
-
问题是我不知道如何查看我得到的数据。字典对象包含一些列表,但不包含正确的信息? @Luaan
-
如果它不包含正确的信息,则信息不存在。按照协议规范,
Metainfo files (also known as .torrent files) are bencoded dictionaries with the following keys: announce (The URL of the tracker) info (This maps to a dictionary, with keys described below)。所以你需要进一步解码顶级字典的info部分。但是,我仍然不明白读取 torrent 文件与 torrent 文件的“名称、大小和日期”有什么关系——这就是FileInfo的用途。如果您指的是 在 torrent 中描述的文件,则没有日期。 -
@Luaan。我想获取种子信息。就像当前种子中所有文件的大小一样。喜欢本站可以给我:i-tools.org/torrent/exec
-
规范是“如何”。你还需要什么?你有一个可以解码数据的库,并且你有一个数据结构是什么的规范。你知道,你不会为你作为程序员遇到的每一个问题找到一个分步指南(这非常接近于一个分步指南)。
标签: c# decode torrent bencoding