У меня есть FileStream, который состоит из нескольких файлов, помещенных в один файл, и у меня есть список длин файлов, другими словами, я могу легко рассчитать положение и длину всех файлов.Я хочу создать метод Open, который принимает индекс файла и возвращает поток, содержащий только этот файл.В настоящее время я реализовал это, используя поток памяти, но это заставляет меня копировать весь (не контейнер, а весь содержащийся) файл в память, и я не хочу этого делать.Итак, я хотел бы иметь возможность создать класс, который реализует поток и принимает другой поток, параметр смещения и длины, а затем доступен для чтения и поиска, только когда вы выполняете Seek (0), вы должны получить смещениележащего в основе потока.Так как в классе адаптеров, и мне было интересно, возможно ли это, или даже хорошая идея, или у кого-нибудь есть лучшие идеи, как решить эту проблему.Я понимаю, что если я делаю это так, как я только что описал, мне нужно убедиться, что доступ к нижележащему потоку синхронизирован, и что все открытые частичные потоки содержат закрытую переменную, сообщающую им, где они находятся в текущем потоке, но этовероятно, должно быть dooable, верно?кто-нибудь делал что-то подобное раньше?Или есть симпел .NET-класс, который я могу просто использовать?Буду признателен за любую помощь.
Ой, и извините за плохой английский, я забыл установить свой браузер на английском, поэтому проверка орфографии говорит мне, что все не так.