У меня есть какой-то торрент-файл со списком объявленных URL-адресов, например, это его часть:
announce-listll68:http://iptorrents.com:2790/b6d18a815ab4421a86de672d6833369d/announceel67:http://iptorrents.me:2710/b6d18a815ab4421a86de672d6833369d/announceel67:http://iptorrents.ru:6969/b6d18a815ab4421a86de672d6833369d/announceee
Итак, вот один массив с ключом «announce-list», который содержит три элемента (закодированные данные), http://en.wikipedia.org/wiki/Bencode). Итак, я использую класс BDecoder.java от Aeltis для его декодирования. При синтаксическом анализе я получаю следующие значения Map:
{created by=[B@141d683, announce=[B@16a55fa, encoding=[B@32c41a, announce-list=[[[B@e89b94], [[B@13e205f], [[B@1bf73fa]], comment=[B@5740bb, creation date=1310060702, info={pieces=[B@5ac072, name=[B@109a4c, length=34209795, piece length=65536, private=1}}
Итак, объявите список, заполненный некоторыми хешами.Как я могу преобразовать его в обычную строку (например, «http://iptorrents.com:2790/b6d18a815ab4421a86de672d6833369d/announce»)? Или это какая-то проблема с алгоритмом в BDecoder.java?
Это метод высшего класса для декодирования данных: http://pastebin.com/HimqF0ye