Перейти к содержанию
    

Распаковка файлов в vxWorks.

В vxWorks есть функция inflate которая распаковывает файлы упакованные zlib.

Скажем я упаковал несколько *.txt файлов в архив - arch.gz

но функция принимает в качестве параметров упакованный массив и массив куда распаковать

int inflate(Byte * src, Byte * dest, int nBytes)

 

А как мне работать с файлами?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы не можете упаковать в gz несколько файлов. gzip -- компрессор, он сжимает один файл.

Сделать один файл из нескольких -- задача архиватора. Например, tar.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы не можете упаковать в gz несколько файлов. gzip -- компрессор, он сжимает один файл.

Сделать один файл из нескольких -- задача архиватора. Например, tar.

я понял. а если я сжал файл как мне передать его в функцию?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я понял. а если я сжал файл как мне передать его в функцию?

Это зависит от того, где вы его сжали - на storage device или в памяти

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это зависит от того, где вы его сжали - на storage device или в памяти

я хочу сжимать утилитой на компьютере. я нашел програмку которая, сжимает пользуясь zlib. ну по крайнер мере так они утверждают. я передавал в програму файл, вроде создает сжатый файл.

потом этот файл передадут мне а я на стороне контроллера должен распаковать.

 

Вы не можете упаковать в gz несколько файлов. gzip -- компрессор, он сжимает один файл.

Сделать один файл из нескольких -- задача архиватора. Например, tar.

ааа. так это вообще проблема. народ хочет упаковать 8 файлов в один архивированный файл и передать мне. мне тогда zlib не помогает.

я не нашел в vxWorks библиотеки для работы с архивированными файлами. надо тащить какую то библиотеку?

 

О! Нашел! в vxWorks есть tarLib для работы с архивированными файлами. в частности там есть

STATUS tarExtract
  (
    char * pTape,             /* tape device name */
    int    bfactor,           /* requested blocking factor */
    BOOL   verbose            /* if TRUE print progress info */
    )

должно сработать.

Изменено пользователем Jenya7

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...