Имя: Пароль:
1C
1С v8
Извлечение архива на сервере Linux?
0 spiller26
 
12.08.16
13:44
Сервак 1с на Linux Centos
Пытаюсь разархивировать odt-файл на сервере.

Архив.ИзвлечьВсе(ВременнаяПапкаДляРазархивирования, РежимВосстановленияПутейФайловZIP.Восстанавливать);

Архив извлекается, только на уходит в "Исключение", в чём подвох, в описании ошибке пустая строка


    ВременнаяПапкаДляРазархивирования = ПолучитьИмяВременногоФайла("");
    СоздатьКаталог(ВременнаяПапкаДляРазархивирования);
    ВременныйZIPФайл = ПолучитьИмяВременногоФайла("zip");
    
    КопироватьФайл(ПутьКФайлу, ВременныйZIPФайл);
    Файл = Новый Файл(ВременныйZIPФайл);
    Файл.УстановитьТолькоЧтение(Ложь);

    Попытка
        Архив = Новый ЧтениеZipФайла();
        Архив.Открыть(ВременныйZIPФайл);
        Архив.ИзвлечьВсе(ВременнаяПапкаДляРазархивирования, РежимВосстановленияПутейФайловZIP.Восстанавливать);
        Архив.Закрыть();
        ЧтениеXML = Новый ЧтениеXML();
        
        ЧтениеXML.ОткрытьФайл(ВременнаяПапкаДляРазархивирования + "/content.xml");
        ИзвлеченныйТекст = ИзвлечьТекстИзContentXML(ЧтениеXML);
        ЧтениеXML.Закрыть();
    Исключение
        // Не считаем ошибкой, т.к. например расширение OTF может быть как OpenDocument, так и шрифт OpenType.
        Отказ = Истина;
        ИзвлеченныйТекст = "";
    КонецПопытки;
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.