powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Можно ли по началу буфера определить - он сжат ZIP?
25 сообщений из 41, страница 1 из 2
Можно ли по началу буфера определить - он сжат ZIP?
    #39478357
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть поле в базе SQL Server, я сжимаю его своей SQLCLR c# функцией, которая использует ZIP сжатие, и пишу в поле рядом.
Можно ли определить по первым байтам - сжато поле или нет?
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478363
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин,

у Zip архивов первые 2 байта должны быть "PK" в честь автора формата Филипа Катца (Philip Katz)
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478398
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а если GZIP? хотелось бы по первым байтам понять надо ли разжимать поле или нет
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478403
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин, у GZIP сигнатура 1F8B08
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478517
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman MejtesРолг Хупин, у GZIP сигнатура 1F8B08

у буфера тоже или у файла?

Вот, взял для примера 4 записи, такое начало, соответственно в nvarchar(MAX) и конверт в varbinary(MAX)

oMkAAO1da2/cRrL9HiD/ ... 0x6F004D006B00410041004F0031006400610032002F0063005...
8wUBAO2dbW/bxrKAv1/... 0x380077005500420041004F0032006400620057002F0062007
LAYBAO2d3W7bSLKA7w... 0x4C0041005900420041004F003200640033005700370062005...
7wUBAO2dbW/bxrKAv1... 0x370077005500420041004F0032006400620057002F0062007...
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478537
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какого в жопу буфера?
nvarchar(MAX) - он не для двоичных данных вообще-то
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478608
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилкакого в жопу буфера?
...
Одобряю. И вопрошавшего туда - же.
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478610
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилкакого в жопу буфера?
...
Одобряю. И вопрошавшего туда - же.
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478616
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikronИзопропилкакого в жопу буфера?
...
Одобряю. И вопрошавшего туда - же.

Странный юзер, зачем вы дважды одну и ту же глупость написали?
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478621
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилкакого в жопу буфера?
nvarchar(MAX) - он не для двоичных данных вообще-то

Не стоит так категорично, в него записаны зажатые данные, и из него они разжимаются нормально
Видимо, так устроены функции сжатия/разжатия.
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478624
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин,

вы реально храните сжатые двоичные данные в nvarchar(MAX) ?

Если да- исправьте эту ошибку, дальше можно о сигнатурах говорить
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478637
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупинmikronпропущено...

Одобряю. И вопрошавшего туда - же.

Странный юзер, зачем вы дважды одну и ту же глупость написали?
Какая в жопу глипость? Всё через жопу. Это проза жизни.
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478642
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил,

Похоже на BASE64. Но, $х§!, с таким надо в космотавты.
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478660
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилРолг Хупин,

вы реально храните сжатые двоичные данные в nvarchar(MAX) ?

Если да- исправьте эту ошибку, дальше можно о сигнатурах говорить

ну, не я, но - да.
Исправлю.
Но мне надо понять, можно ли распознать, чтобы проще декомпрессить, и заодно и исправлю эту досадную фигню.
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478662
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikronРолг Хупинпропущено...


Странный юзер, зачем вы дважды одну и ту же глупость написали?
Какая в жопу глипость? Всё через жопу . Это проза жизни.

Юзер, вы несколько раз упомянули об этом, у вас навязчивая фантазия или альтернативная ориентация, х.з.. Но я думаю, что это не тот форум, где вы сможете найти единомышленников. Сделайте одолжение, не участвуйте в этом обсуждении.
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478679
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг ХупинНо мне надо понять, можно ли распознать, чтобы проще декомпрессить, и заодно и исправлю эту досадную фигню.
ну тогда нужно распаковать несколько первых байт из base64
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478685
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилРолг ХупинНо мне надо понять, можно ли распознать, чтобы проще декомпрессить, и заодно и исправлю эту досадную фигню.
ну тогда нужно распаковать несколько первых байт из base64
Если не путаю base64 должен дать одинаковые первые 2-3 символа, если в начале 2-3 байта сигнатуры, но их не наблюдается 20594149
Или это не base64 или в начале нет сигнатуры.
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478706
refreg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг ХупинЕсть поле в базе SQL Server, я сжимаю его своей SQLCLR c# функцией, которая использует ZIP сжатие, и пишу в поле рядом.
Можно ли определить по первым байтам - сжато поле или нет?Есть поле, несжатое, так?
Рядом поле сжатое, так?

Так что надо определить-то?
Находятся ли в поле со сжатыми данными сжатые данные?
Или находятся ли в поле с несжатыми данными несжатые данные?
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478923
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
refregРолг ХупинЕсть поле в базе SQL Server, я сжимаю его своей SQLCLR c# функцией, которая использует ZIP сжатие, и пишу в поле рядом.
Можно ли определить по первым байтам - сжато поле или нет?Есть поле, несжатое, так?
Рядом поле сжатое, так?

Так что надо определить-то?
Находятся ли в поле со сжатыми данными сжатые данные?
Или находятся ли в поле с несжатыми данными несжатые данные?

В поле со сжатыми - реально сжатые данные (зипом, жзипом) или туда просто вписали несжатое значение.
Т.е., например, значения могут храниться и в сжатом, и в несжатом виде в одном поле.
Если приложение думает, что там всегда сжатые данные, то при попытке разжатия будет ошибка.
Хотелось бы определять
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478936
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг ХупинoMkAAO1da2/cRrL9HiD/ ... 0x6F004D006B00410041004F0031006400610032002F0063005
изрядно бессмысленное преобразование из строки UTF-16 в её двоичное представление

ещё раз - в NVARCAR(MAX) - base64 записывается?
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478974
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какая то фигня. если вы используйте GZIP для экономии места, то это дичь, данные в базе и так можно сжимать, без всяких GZIP. Я не гуру по базам данных, но такой функционал там точно есть.
В SQLLite базы вроде и так храняться упакованные gzip'ом.
Вы сжимаете данные GZIP, а потом шифруете base64, в результате данные сперва становятся меньше, а потом опять больше, какой в этом смысл? выигрышь будет минимальным. для хранения binary данные используйте соответствующие типы полей
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478984
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikronИзопропил,

Похоже на BASE64. Но, $х§!, с таким надо в космотавты .

в тавтокосмы
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39478989
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesкакая то фигня. если вы используйте GZIP для экономии места, то это дичь, данные в базе и так можно сжимать, без всяких GZIP. Я не гуру по базам данных, но такой функционал там точно есть.
В SQLLite базы вроде и так храняться упакованные gzip'ом.
Вы сжимаете данные GZIP, а потом шифруете base64, в результате данные сперва становятся меньше, а потом опять больше, какой в этом смысл? выигрышь будет минимальным. для хранения binary данные используйте соответствующие типы полей

Да, varbinary буду использовать.
Сейчас используется SQLCLR функция для сжатия/разжатия, внутри она использует zip или gzip по выбору юзера.

Хорошо, расскажите мне про неДичь для SQL Server 2008-1017 (Express-Ent)?
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39479070
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин,

в MSSQL 2016 есть Compress, Decompress для VARBINARY, на счет не скажу, я не базист
...
Рейтинг: 0 / 0
Можно ли по началу буфера определить - он сжат ZIP?
    #39479140
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman MejtesРолг Хупин,

в MSSQL 2016 есть Compress, Decompress для VARBINARY, на счет не скажу, я не базист

Это есть в 2016, с момента SP1 вроде как во всех Editions.
Но есть еще 2008-2014, я должен их поддерживать для своей базы, так что вынужден часто изобретать велосипеды, которые уже есть в новых версиях
...
Рейтинг: 0 / 0
25 сообщений из 41, страница 1 из 2
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Можно ли по началу буфера определить - он сжат ZIP?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]