Посоветуйте ZIP сборку для Silverlight 4
Я использую версию #ziplib (SharpZipLib) в Silverlight, но она кажется серьезной, потому что DeflateOutputStream
всегда выдает 2 байта (120, 156) для любого ввода (адский алгоритм сжатия;), поэтому я не могу его использовать. Более того, похоже, что этому последнему выпуску уже почти 2 года.
Любая рекомендация для бесплатной (для использования в коммерческом продукте) сборки, которая поддерживает дефлирование потоков?
Изменить: сайт DotNetZip говорит, что поддержка Silverlight отложена до следующего выпуска. С учетом того, что последний * релиз * был в прошлом году, а альфа в "капюшоне", теперь мы, вероятно, скоро увидим что-то плодотворное
2 ответа
Извините, но я ошибся насчет Silverlight SharpZipLib. Он отлично работает, если вы не забыли позвонить Flush
а также Close
на DeflateOutputStream
, Я использовал MemoryStream
для поддержки, чтобы я мог сжать данные, которые я бы загрузить на сервер. Думая, что данные были потеряны, если поток был закрыт, я не сделал это нарочно. Это было, пока я не обнаружил byte[] MemoryStream.ToArray()
,
Вне Silverlight я предпочитаю DotNetZip, однако нет аналога Silverlight.
Единственная альтернатива SharpZipLib для Silverlight - это распаковка собственного Zip-файла Silverlight. Однако он действительно предназначен для доступа к ресурсам в Xaps.