ZipArchive - добавление файлов с кирилицей в названии

filipchuk

Новичок
Как правильно добавлять такие файлы в архив?
Например, добавляю файл тест.png в архив, сохраняю его на сервере
Если скачать архив и попытаться его открыть, то имя файла отображается некорректно, и распаковать его невозможно (выдает ошибку)
Пробовал делать перекодировку названия в CP866, не помогает...
 

Dovg

Продвинутый новичок
в zip архиве не хранится кодировка файла. Если вы хотите открывать архивы на русской винде, то имена файлов должны быть записаны в кодировке 866 (AFAIR)
 

fixxxer

К.О.
Партнер клуба
На самом деле в зиповском заголовке есть unicode flag [1]. Если его взвести, то все сколь-либо современные (т.е. досовский pkunzip.exe 87-го года исключаем) распаковщики будут интерпретировать имена как utf8.

Как с этим дело обстоит в ZipArchive - хз, судя по багрепортам - все плохо. Но можно попробовать пихать юникодные имена и потом вручную менять этот бит :)

[1] http://www.pkware.com/documents/casestudies/APPNOTE.TXT J, Bit 11 (EFS)
 

filipchuk

Новичок
спецификацию не смотрел :)
но все спасибо, в принципе привязки к ZipArchive нет, так что может быть как вариант
 
Сверху