@DKENdhdhdasd

Как сжать файл?

В интернете нашел gzip. Я делаю:
text, _ := ioutil.ReadFile("file.exe")
     var compr bytes.Buffer
	writer, err := gzip.NewWriterLevel(&compr, gzip.BestCompression)

	_, err = writer.Write(text)
	writer.Close()

	if err != nil {
		return []byte(""), err
	}

	ioutil.WriteFile("file1.exe", compr.Bytes(), os.ModePerm)


Но после этого ехешник ломается. Как это можно исправить?
  • Вопрос задан
  • 156 просмотров
Пригласить эксперта
Ответы на вопрос 3
mayton2019
@mayton2019
Bigdata Engineer
Для exe-шников еще в 90-е создавались не архиваторы а всякие "упаковщики". Из таковых я помню UPX https://upx.github.io/
Ответ написан
Комментировать
xez
@xez
TL Junior Roo
Никак. Архив - это не исполняемый файл.
Ответ написан
@Wirusnyy-chel
Если нужно уменьшить размер бинарника который собирается гошкой https://habr.com/ru/company/plesk/blog/532402/

Если хотите сжимать файлы для пересылки/хранения то перед использованием их нужно распаковать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы