Доступ к любому файлу в Zip-файле [дубликат]

Еще один подход к возврату значения из асинхронной функции - передать объект, который сохранит результат от асинхронной функции.

Вот пример того же:

var async = require("async");

// This wires up result back to the caller
var result = {};
var asyncTasks = [];
asyncTasks.push(function(_callback){
    // some asynchronous operation
    $.ajax({
        url: '...',
        success: function(response) {
            result.response = response;
            _callback();
        }
    });
});

async.parallel(asyncTasks, function(){
    // result is available after performing asynchronous operation
    console.log(result)
    console.log('Done');
});

Я использую объект result для хранения значения во время асинхронной операции. Это позволяет получить результат даже после асинхронного задания.

Я использую этот подход много. Мне было бы интересно узнать, насколько хорошо этот подход работает, когда задействован результат обратно через последовательные модули.

1
задан Luca Vitucci 29 July 2014 в 15:20
поделиться

1 ответ

Я только что нашел ответ,

Мне пришлось изменить SSZipArchive, чтобы вставить метод, который будет извлекать один файл из ZIP-архива (на основе его имени)

найти измененную версию здесь , если кто-то найдет это полезное, я могу его очистить, добавить делегата, проверить и предложить вытащить SSZipArchive.

Использование прост:

NSString *zipEntityToExtract = @"example.aac";
NSString *destinationFilePath = ...; //(Includes filename)
NSString *zipPath = ...;
[SSZipArchive unzipEntityName:zipEntityToExtract fromFilePath:zipPath toDestination:filePath];
//File is now in destinationFilePath
2
ответ дан Luca Vitucci 25 August 2018 в 13:06
поделиться