Вопрос.
С какой целью это делать - независимость от типа архивируемых данных или независимость от типа и нахождения архива?
Если первое - то глупо и не эффективно.