Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2]      все
 Re: Декодировать и распоковать файл base64 в plsql  [new]
sam_sql.ru
Member

Откуда:
Сообщений: 600
Leonid Kudryavtsev,

спасибо,
с raw прогнал, согласен.

Т.е. локально сейчас архив открывается.

но дальше, после decode_base64 проблема по разархивированию осталась...
5 фев 19, 17:01    [21802074]     Ответить | Цитировать Сообщить модератору
 Re: Декодировать и распоковать файл base64 в plsql  [new]
Vadim Lejnin
Member

Откуда:
Сообщений: 6613
$ echo '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'| base64 -d > 1.zip
$ unzip -t 1.zip
Archive:  1.zip
    testing: 277634.xml               OK
No errors detected in compressed data of 1.zip.


как тебе Илон Маск?
5 фев 19, 17:11    [21802082]     Ответить | Цитировать Сообщить модератору
 Re: Декодировать и распоковать файл base64 в plsql  [new]
sam_sql.ru
Member

Откуда:
Сообщений: 600
Vadim Lejnin,

выше же я написал, что я уже смог внешней утилитой разархивировать.
задача - как это в plsql сделать.
5 фев 19, 17:13    [21802084]     Ответить | Цитировать Сообщить модератору
 Re: Декодировать и распоковать файл base64 в plsql  [new]
Vadim Lejnin
Member

Откуда:
Сообщений: 6613
sam_sql.ru,

Вот кодирование (раскодирование работает также, только вместо clob используй blob
12443837
5 фев 19, 17:15    [21802088]     Ответить | Цитировать Сообщить модератору
 Re: Декодировать и распоковать файл base64 в plsql  [new]
Vadim Lejnin
Member

Откуда:
Сообщений: 6613
sam_sql.ru,

Тебе надо пошиковать ввод
Каждй кусочек преобразовать и слить

Вот еще ссылка
Ask Tom: Decoding from base64
5 фев 19, 17:22    [21802098]     Ответить | Цитировать Сообщить модератору
 Re: Декодировать и распоковать файл base64 в plsql  [new]
sam_sql.ru
Member

Откуда:
Сообщений: 600
Vadim Lejnin,

это все уже сделано.
1. раскодирование base64 - пройдено
2. Сохраняю в blob и потом локально в файл - далее разархирвирую файл (в winrar например), все ок - работает

но если делаю разархивацию на стороне plsql, средствами:
utl_compress
java библиотеками
или
самописным , наподобие
тут

ругается, что-то вроде
Во время сжатия или разуплатнения возникла ошибка.

Нужны примеры, больше примеров....с plsql и работой zlib (как я понял)
5 фев 19, 17:22    [21802100]     Ответить | Цитировать Сообщить модератору
 Re: Декодировать и распоковать файл base64 в plsql  [new]
ART-CODE
Member

Откуда:
Сообщений: 1078
sam_sql.ru
1. раскодирование base64 - пройдено

Про реализацию BASE64 - было бы любопытно взглянуть как сделали.
Можно сравнить с моей реализаией:
Oracle base64 FRC version?

Про раскрытие zip - можно посмотреть реализацию в александрии
там извлекают текст из офисных документов - (OOXML).
5 фев 19, 23:43    [21802258]     Ответить | Цитировать Сообщить модератору
 Re: Декодировать и распоковать файл base64 в plsql  [new]
Vadim Lejnin
Member

Откуда:
Сообщений: 6613
ART-CODE,

Увы, пакет возвращает
declare
bi blob := empty_blob();
bo blob := empty_blob();
begin
   select x into bi from vvv where rownum=1;
--   bo:=zip_util_pkg.get_file(bi,'277634.xml');   
   bo:=as_zip.get_file(bi,'277634.xml');   
end;

p.s.
в vvv.x - лежит Ваш zip
as_zip - одна из версий zip_util_pkg

$ oerr ora 29294
29294, 00000, "A data error occurred during compression or uncompression."
// *Cause:  An error occurred while compressing or uncompressing input source.
// *Action: Verify that source data is a valid compressed or uncompressed



MOS
ORA-29294 Raised When UTL_COMPRESS.LZ_UNCOMPRESS to decompress valid compressed data from a BLOB (Doc ID 1544982.1)


Говорит, что пакет utl_compress не поддерживает метод шифрования который используете Вы
6 фев 19, 10:07    [21802409]     Ответить | Цитировать Сообщить модератору
 Re: Декодировать и распоковать файл base64 в plsql  [new]
sam_sql.ru
Member

Откуда:
Сообщений: 600
В общем пока получается разархивировать.
Заюзал Java библиотечки. Все остальное не работает.

Как закончу - постараюсь выложить.
6 фев 19, 14:17    [21802692]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2]      все
Все форумы / Oracle Ответить