Libtorrent torrent-> magnet

时间:2017-05-23 11:52:23

标签: c++ torrent libtorrent

我试图用libtorrent将一些种子变成磁铁。

我已经在python中读到了你可以使用

 info = libtorrent.torrent_info(sys.argv[1])
 print "magnet:?xt=urn:btih:%s&dn=%s" % (info.info_hash(), info.name())

我在C ++上尝试了以下内容

 torrent_info ti(current_file.c_str(), ec);
 printf("magnet:?xt=urn:btih:%s&dn=%s\n", ti.info_hash().to_string().c_str(), ti.name().c_str());

但结果不是正确的字符串(是二进制),不能使用结果。

有人知道如何将torrent的哈希转换为我可以打印的内容吗?

非常感谢。

1 个答案:

答案 0 :(得分:0)

您可以使用make_magnet_uri中声明的"libtorrent/magnet_uri.hpp"

以下是将torrent文件转换为magnet uri的示例代码:

error_code ec;
torrent_info ti("filename", ec);
std::string magnet_uri = make_magnet_uri(ti);